Added memusage.c to debug directory.

This commit is contained in:
Lasse Collin 2008-04-25 13:41:29 +03:00
parent 8f804c29aa
commit d3ba30243c
2 changed files with 57 additions and 1 deletions

View File

@ -15,7 +15,8 @@
noinst_PROGRAMS = \
repeat \
sync_flush \
full_flush
full_flush \
memusage
AM_CPPFLAGS = \
-I@top_srcdir@/src/common \

55
debug/memusage.c Normal file
View File

@ -0,0 +1,55 @@
///////////////////////////////////////////////////////////////////////////////
//
/// \file memusage.c
/// \brief Calculates memory usage using lzma_memory_usage()
///
// Copyright (C) 2008 Lasse Collin
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
// version 2.1 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Lesser General Public License for more details.
//
///////////////////////////////////////////////////////////////////////////////
#include "sysdefs.h"
#include <stdio.h>
int
main(void)
{
lzma_options_lzma lzma = {
.dictionary_size = (1 << 27) + (1 << 26),
.literal_context_bits = 3,
.literal_pos_bits = 0,
.pos_bits = 2,
.preset_dictionary = NULL,
.preset_dictionary_size = 0,
.mode = LZMA_MODE_BEST,
.fast_bytes = 48,
.match_finder = LZMA_MF_BT4,
.match_finder_cycles = 0,
};
/*
lzma_options_filter filters[] = {
{ LZMA_FILTER_LZMA,
(lzma_options_lzma *)&lzma_preset_lzma[6 - 1] },
{ UINT64_MAX, NULL }
};
*/
lzma_options_filter filters[] = {
{ LZMA_FILTER_LZMA, &lzma },
{ UINT64_MAX, NULL }
};
printf("%u MiB\n", lzma_memory_usage(filters, true));
return 0;
}