| Version 17 (modified by faltet, 3 years ago) (diff) |
|---|
Synthetic Benchmarks
In order to assess the performance of Blosc in different situations, a handy bench/bench.c standalone program is provided. Here it is an example on how to compile the benchmark.
GCC (Unix) or MINGW (Windows):
$ cd your_blosc_sources/bench $ gcc -O3 -msse2 -o bench bench.c ../src/blosc.c ../src/blosclz.c ../src/shuffle.c -lpthread
MSVC (Windows):
> cd your_blosc_sources\bench > cl /Ox /Febench.exe bench.c ..\src\blosc.c ..\src\blosclz.c ..\src\shuffle.c /link pthreadvc2.lib
Then, if you pass the 'suite' parameter followed by the number of cores in your machine, i.e. something like:
$ bench suite [nthreads]
then a small suite will be run that checks the speed of Blosc for the specified number of threads. Given this output, you can convert it into a plot by using the bench/plot-speeds.py scripts (you will need the matplotlib library installed). You can print a small online help for this script usage:
$ python plot-speeds.py -? usage: plot-speeds.py [-o outfile] [-t title ] [-c] [-d] filename -o filename for output (many extensions supported, e.g. .png, .jpg, .pdf) -t title of the plot -c plot compression speed -d plot decompression speed (default)
For example, if you have, say, 6 cores in your machine, and want to get the plots interactively, proceed like this:
$ ./bench suite 6 > mysuite.out $ python plot-speeds.py -c mysuite.out # get the compression plot $ python plot-speeds.py -d mysuite.out # get the decompression one
Alternatively, you can straight get a plot file by using the -o flag.
If you want to help with the fine-tuning of Blosc for other processors, please send your own output of this suite to blosc@…. Please be sure that you also provide the next information:
CPU info: (vendor, model or cache sizes) Operating System: (Linux/Windows/MacOSX and version) Compiler used: (GCC/MSVC/MINGW and version)
That info will be extremely useful for allowing allow better compression ratios and performance in future versions. Thanks!
See below for some contributed outputs and plots:
Processor model: Intel Core2 Duo Q8400 @ 2.66 GHz
Compiler: gcc version 4.4.1
OS: openSUSE 11.2, 64-bit
Suite output (4 threads)
Attachments
-
compr-4t-linux64-small.png
(38.7 KB) -
added by faltet 3 years ago.
-
compr-6t-wingw64-small.png
(46.2 KB) -
added by faltet 3 years ago.
-
decompr-4t-linux64-small.png
(41.3 KB) -
added by faltet 3 years ago.
-
decompr-6t-wingw64-small.png
(51.9 KB) -
added by faltet 3 years ago.
-
suite-linux-core2.out
(7.0 KB) -
added by faltet 3 years ago.
-
suite-windows7-amdx6.out
(10.7 KB) -
added by faltet 3 years ago.
-
mysuite-powerpc-g4.out
(1.7 KB) -
added by faltet 3 years ago.
-
compr-8t-osx-nehalem-small.png
(46.1 KB) -
added by faltet 3 years ago.
-
decompr-8t-osx-nehalem-small.png
(51.0 KB) -
added by faltet 3 years ago.
-
suite-nehalem-gcc45.out
(14.0 KB) -
added by faltet 3 years ago.
-
suite-core2-ubuntu-gcc44.out
(3.2 KB) -
added by faltet 3 years ago.
-
bench-win32.zip
(27.3 KB) -
added by faltet 3 years ago.
-
bench-win64.zip
(35.9 KB) -
added by faltet 3 years ago.
-
compr-2t-linux32-pentium4-ht-small.png
(28.8 KB) -
added by faltet 3 years ago.
-
decompr-2t-linux32-pentium4-ht-small.png
(31.1 KB) -
added by faltet 3 years ago.
-
suite-2t-linux32-pentium4-ht.out
(3.5 KB) -
added by faltet 3 years ago.
-
compr-4t-win64-core2-quad-small.png
(35.7 KB) -
added by faltet 3 years ago.
-
decompr-4t-win64-core2-quad-small.png
(39.1 KB) -
added by faltet 3 years ago.
-
suite-4t-win64-core2-quad.out
(7.0 KB) -
added by faltet 3 years ago.
-
compr-ubuntu-opteron-2t-small.png
(29.0 KB) -
added by faltet 3 years ago.
-
decompr-ubuntu-opteron-2t-small.png
(33.8 KB) -
added by faltet 3 years ago.
-
mysuite-ubuntu-opteron-2t.out
(3.6 KB) -
added by faltet 3 years ago.
-
compr-1t-osx-powerpc-G4-small.png
(24.9 KB) -
added by faltet 3 years ago.
-
decompr-1t-osx-powerpc-G4-small.png
(24.8 KB) -
added by faltet 3 years ago.
-
compr-2t-linux-core2-small.png
(30.3 KB) -
added by faltet 3 years ago.
-
decompr-2t-linux-core2-small.png
(33.7 KB) -
added by faltet 3 years ago.
-
suite-core2-opensuse-gcc44.out
(3.5 KB) -
added by faltet 3 years ago.
-
suite-2t-linux32-atom-ht.out
(3.5 KB) -
added by faltet 3 years ago.
-
compr-ubuntu-atom-2t-small.png
(28.0 KB) -
added by faltet 3 years ago.
-
decompr-ubuntu-atom-2t-small.png
(29.9 KB) -
added by faltet 3 years ago.
-
suite-2t-linux32-atom-ht.2.out
(3.5 KB) -
added by faltet 3 years ago.
-
linux-i7-980x-6-compr.png
(85.5 KB) -
added by faltet 21 months ago.
-
linux-i7-980x-6-decompr.png
(102.3 KB) -
added by faltet 21 months ago.
-
linux-i7-980x-6.out
(11.1 KB) -
added by faltet 21 months ago.
-
linux-i7-980x-6-compr-small.png
(54.7 KB) -
added by faltet 21 months ago.
-
linux-i7-980x-6-decompr-small.png
(61.0 KB) -
added by faltet 21 months ago.
-
intel-atom-330-suite-decompression.png
(75.7 KB) -
added by faltet 14 months ago.
-
intel-atom-330-suite-compression.png
(66.3 KB) -
added by faltet 14 months ago.
-
intel-atom-330-suite-compression-small.png
(55.1 KB) -
added by faltet 14 months ago.
-
intel-atom-330-suite-decompression-small.png
(58.6 KB) -
added by faltet 14 months ago.
-
intel-atom-330-suite.out
(7.0 KB) -
added by faltet 14 months ago.
-
four-six-opteron-suite.out
(42.0 KB) -
added by faltet 14 months ago.
-
four-six-opteron-suite-decompression-small.png
(181.5 KB) -
added by faltet 14 months ago.
-
four-six-opteron-suite-compression-small.png
(168.4 KB) -
added by faltet 14 months ago.
-
viznode07.out
(21.1 KB) -
added by vhaenel 14 months ago.
-
viznode07-compression-small.png
(66.7 KB) -
added by vhaenel 14 months ago.
-
viznode07-decompression-small.png
(85.7 KB) -
added by vhaenel 14 months ago.
-
linux-3930K.out
(21.1 KB) -
added by faltet 14 months ago.
-
linux-3930K-compr-small.png
(80.3 KB) -
added by vhaenel 13 months ago.
-
linux-3930K-decompr-small.png
(102.7 KB) -
added by vhaenel 13 months ago.
![(please configure the [header_logo] section in trac.ini)](/images/blosc-logo-small.png)