9d6ed9def3
* Minor fix * Run non-optimize FASTCOVER 5 times in benchmark * Merge fastCover into dictBuilder * Fix mixed declaration issue * Add fastcover to symbol.c * Add fastCover.c and cover.h to build * Change fastCover.c to fastcover.c * Update benchmark to run FASTCOVER in dictBuilder * Undo spliting fastcover_param into cover_param and f * Remove convert param functions * Assign f to parameter * Add zdict.h to Makefile in lib * Add cover.h to BUCK * Cast 1 to U64 before shifting * Remove trimming of zero freq head and tail in selectSegment and rebenchmark * Remove f as a separate parameter of tryParam * Read 8 bytes when d is 6 * Add trimming off zero frequency head and tail * Use best functions from COVER and remove trimming part(which leads to worse compression ratio after previous bugs were fixed) * Add finalize= argument to FASTCOVER to specify percentage of training samples passed to ZDICT_finalizeDictionary * Change nbDmer to always read 8 bytes even when d=6 * Add skip=# argument to allow skipping dmers in computeFrequency in FASTCOVER * Update comments and benchmarking result * Change default method of ZDICT_trainFromBuffer to ZDICT_optimizeTrainFromBuffer_fastCover * Add dictType enum and fix bug about passing zParam when converting to coverParam * Combine finalize and skip into a single parameter * Update acceleration parameters and benchmark on 3 sample sets * Change default splitPoint of FASTCOVER to 0.75 and benchmark first 3 sample sets * Initialize variables outside of for loop in benchmark.c * Update benchmark result for hg-manifest * Remove cover.h from install-includes * Add explanation of f * Set default compression level for trainFromBuffer to 3 * Add assertion of fastCoverParams in DiB_trainFromFiles * Add checkTotalCompressedSize function + some minor fixes * Add test for multithreading fastCovr * Initialize segmentFreqs in every FASTCOVER_selectSegment and move mutex_unnlock to end of COVER_best_finish * Free segmentFreqs * Initialize segmentFreqs before calling FASTCOVER_buildDictionary instead of in FASTCOVER_selectSegment * Add FASTCOVER_MEMMULT * Minor fix * Update benchmarking result |
||
---|---|---|
.. | ||
cmake | ||
VS2008 | ||
VS2010 | ||
VS_scripts | ||
.gitignore | ||
README.md |
Projects for various integrated development environments (IDE)
Included projects
The following projects are included with the zstd distribution:
cmake
- CMake project contributed by Artyom DymchenkoVS2005
- Visual Studio 2005 Project (this project has been moved to the contrib directory and will no longer be supported)VS2008
- Visual Studio 2008 projectVS2010
- Visual Studio 2010 project (which also works well with Visual Studio 2012, 2013, 2015)VS_scripts
- command line scripts prepared for Visual Studio compilation without IDE
How to compile zstd with Visual Studio
- Install Visual Studio e.g. VS 2015 Community Edition (it's free).
- Download the latest version of zstd from https://github.com/facebook/zstd/releases
- Decompress ZIP archive.
- Go to decompressed directory then to
projects
thenVS2010
and openzstd.sln
- Visual Studio will ask about converting VS2010 project to VS2015 and you should agree.
- Change
Debug
toRelease
and if you have 64-bit Windows change alsoWin32
tox64
. - Press F7 on keyboard or select
BUILD
from the menu bar and chooseBuild Solution
. - If compilation will be fine a compiled executable will be in
projects\VS2010\bin\x64\Release\zstd.exe
Projects available within zstd.sln
The Visual Studio solution file visual\VS2010\zstd.sln
contains many projects that will be compiled to the
visual\VS2010\bin\$(Platform)_$(Configuration)
directory. For example zstd
set to x64
and
Release
will be compiled to visual\VS2010\bin\x64_Release\zstd.exe
. The solution file contains the
following projects:
zstd
: Command Line Utility, supporting gzip-like argumentsdatagen
: Synthetic and parametrable data generator, for testsfullbench
: Precisely measure speed for each zstd inner functionsfuzzer
: Test tool, to check zstd integrity on target platformlibzstd
: A static ZSTD library compiled tolibzstd_static.lib
libzstd-dll
: A dynamic ZSTD library (DLL) compiled tolibzstd.dll
with the import librarylibzstd.lib
fullbench-dll
: The fullbench program compiled with the import library; the executable requires ZSTD DLL
Using ZSTD DLL with Microsoft Visual C++ project
The header file lib\zstd.h
and the import library
visual\VS2010\bin\$(Platform)_$(Configuration)\libzstd.lib
are required to compile
a project using Visual C++.
- The path to header files should be added to
Additional Include Directories
that can be found in Project Properties of Visual Studio IDE in theC/C++
Property Pages on theGeneral
page. - The import library has to be added to
Additional Dependencies
that can be found in Project Properties in theLinker
Property Pages on theInput
page. If one will provide only the namelibzstd.lib
without a full path to the library then the directory has to be added toLinker\General\Additional Library Directories
.
The compiled executable will require ZSTD DLL which is available at
visual\VS2010\bin\$(Platform)_$(Configuration)\libzstd.dll
.