i7-9700k

AMD Ryzen 7 1800X Eight-Core testing with a ASUS CROSSHAIR VI HERO (6002 BIOS) and eVGA NVIDIA GeForce GTX 1080 8GB on Arch Linux via the Phoronix Test Suite.

Compare your own system(s) to this result file with the Phoronix Test Suite by running the command: phoronix-test-suite benchmark 1901281-SK-1901277SK78
Jump To Table - Results

View

Do Not Show Noisy Results
Do Not Show Results With Incomplete Data
Do Not Show Results With Little Change/Spread
List Notable Results

Limit displaying results to tests within:

Audio Encoding 2 Tests
Bioinformatics 2 Tests
Chess Test Suite 2 Tests
C/C++ Compiler Tests 10 Tests
Compression Tests 2 Tests
CPU Massive 14 Tests
Creator Workloads 8 Tests
Cryptography 2 Tests
Encoding 3 Tests
HPC - High Performance Computing 2 Tests
Common Kernel Benchmarks 2 Tests
Multi-Core 8 Tests
Raytracing 2 Tests
Renderers 4 Tests
Scientific Computing 2 Tests
Server 2 Tests
Server CPU Tests 6 Tests
Single-Threaded 2 Tests

Statistics

Show Overall Harmonic Mean(s)
Show Overall Geometric Mean
Show Geometric Means Per-Suite/Category
Show Wins / Losses Counts (Pie Chart)
Normalize Results
Remove Outliers Before Calculating Averages

Graph Settings

Force Line Graphs Where Applicable
Convert To Scalar Where Applicable
Prefer Vertical Bar Graphs

Additional Graphs

Show Perf Per Core/Thread Calculation Graphs Where Applicable
Show Perf Per Clock Calculation Graphs Where Applicable

Multi-Way Comparison

Condense Multi-Option Tests Into Single Result Graphs

Table

Show Detailed System Result Table

Run Management

Highlight
Result
Hide
Result
Result
Identifier
Performance Per
Dollar
Date
Run
  Test
  Duration
i7-9700k
January 27 2019
  46 Minutes
test
January 28 2019
  32 Minutes
Invert Hiding All Results Option
  39 Minutes
Only show results matching title/arguments (delimit multiple options with a comma):
Do not show results matching title/arguments (delimit multiple options with a comma):


i7-9700kProcessorMotherboardChipsetMemoryDiskAudioNetworkGraphicsMonitorOSKernelCompilerFile-SystemDesktopDisplay ServerDisplay DriverScreen Resolutioni7-9700ktestIntel Core i7-9700K @ 4.90GHz (8 Cores)ASUS PRIME H310T (1405 BIOS)Intel Cannon Lake PCH Shared SRAM2 x 16384 MB DDR4-2400MT/s Kingston2 x 240GB Patriot BurstRealtek ALC887-VDRealtek RTL8111/8168/8411CentOS Linux 73.10.0-957.1.3.el7.x86_64 (x86_64)GCC 4.8.5 20150623xfsAMD Ryzen 7 1800X Eight-Core @ 4.00GHz (8 Cores / 16 Threads)ASUS CROSSHAIR VI HERO (6002 BIOS)AMD Family 17h64512MB128GB TS128GSSD320 + 2000GB My Passport 0748 + 2 x 250GB Samsung SSD 850 + 1000GB Samsung SSD 970 EVO 1TBeVGA NVIDIA GeForce GTX 1080 8GBNVIDIA GP104 HD AudioBenQ GW2255Intel I211 Gigabit ConnectionArch Linux4.20.4-arch1-1-ARCH (x86_64)KDE Plasma 5.14.5X Server 1.20.3modesetting 1.20.3GCC 8.2.1 20181127 + Clang 7.0.1ext46840x2160OpenBenchmarking.orgCompiler Details- i7-9700k: --build=x86_64-redhat-linux --disable-libgcj --disable-libunwind-exceptions --enable-__cxa_atexit --enable-bootstrap --enable-checking=release --enable-gnu-indirect-function --enable-gnu-unique-object --enable-initfini-array --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-shared --enable-threads=posix --mandir=/usr/share/man --with-arch_32=x86-64 --with-linker-hash-style=gnu --with-tune=generic - test: --disable-libssp --disable-libstdcxx-pch --disable-libunwind-exceptions --disable-werror --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-install-libiberty --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-libmpx --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --mandir=/usr/share/man --with-isl --with-linker-hash-style=gnu Processor Details- i7-9700k: Scaling Governor: intel_pstate powersave- test: Scaling Governor: acpi-cpufreq schedutilSecurity Details- i7-9700k: Load fences __user pointer sanitization + IBRS (kernel) + SSB disabled via prctl and seccomp- test: __user pointer sanitization + Full AMD retpoline IBPB: conditional STIBP: disabled RSB filling + SSB disabled via prctl and seccomp

i7-9700k vs. test ComparisonPhoronix Test SuiteBaseline+61.2%+61.2%+122.4%+122.4%+183.6%+183.6%244.7%72.2%46.4%39.2%25.8%23.2%23.1%23%22.8%7.7%7%G.I.R.1.SP.P.S130.2%SharpenA.C.P64.5%Total Time - 4.1.R.P.P2.F.CWAV To MP333.6%R.4.b.P29.2%CopyC.S.TAddScaleTriadHWB Color Space15.8%S.W.P.SL.A.TWAV To FLAC5.4%M.S.A4.5%SmallptHimeno BenchmarkGraphicsMagickTSCPC-RayParallel BZIP2 CompressionLAME MP3 EncodingOpenSSLStream7-Zip CompressionStreamStreamStreamGraphicsMagickApache BenchmarkGraphicsMagickFLAC Audio EncodingTimed MAFFT Alignmenti7-9700ktest

i7-9700kstream: Copystream: Scalestream: Triadstream: Addmafft: Multiple Sequence Alignmentgcrypt: CAMELLIA256-ECB Ciphercrafty: Elapsed Timetscp: AI Chess Performancettsiod-renderer: Phong Rendering With Soft-Shadow Mappinggraphics-magick: HWB Color Spacegraphics-magick: Local Adaptive Thresholdinggraphics-magick: Sharpengraphics-magick: Resizinghimeno: Poisson Pressure Solvercompress-7zip: Compress Speed Testc-ray: Total Time - 4K, 16 Rays Per Pixelcompress-pbzip2: 256MB File Compressionpovray: Trace Timesmallpt: Global Illumination Renderer; 128 Samplesencode-flac: WAV To FLACencode-mp3: WAV To MP3ffmpeg: H.264 HD To NTSC DVopenssl: RSA 4096-bit Performanceapache: Static Web Page Servingi7-9700ktest298412050222963229212.6915939574409166906733529312910823529423682695.355.6873.6639.409.5925.593.75220622745375462522628205282242.81101472725313818623412784535965.124.0811.4310.1134.20170824502OpenBenchmarking.org

Stream

This benchmark tests the system memory (RAM) performance. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMB/s, More Is BetterStream 2013-01-17Type: Copyi7-9700ktest8K16K24K32K40KSE +/- 2.41, N = 5SE +/- 83.60, N = 529841375461. (CC) gcc options: -O3 -march=native -fopenmp
OpenBenchmarking.orgMB/s, More Is BetterStream 2013-01-17Type: Copyi7-9700ktest7K14K21K28K35KMin: 29836.4 / Avg: 29841.42 / Max: 29849.6Min: 37290 / Avg: 37545.74 / Max: 37738.51. (CC) gcc options: -O3 -march=native -fopenmp

OpenBenchmarking.orgMB/s, More Is BetterStream 2013-01-17Type: Scalei7-9700ktest5K10K15K20K25KSE +/- 11.38, N = 5SE +/- 82.63, N = 520502252261. (CC) gcc options: -O3 -march=native -fopenmp
OpenBenchmarking.orgMB/s, More Is BetterStream 2013-01-17Type: Scalei7-9700ktest4K8K12K16K20KMin: 20475.8 / Avg: 20501.76 / Max: 20539.7Min: 25015.2 / Avg: 25225.82 / Max: 25381.61. (CC) gcc options: -O3 -march=native -fopenmp

OpenBenchmarking.orgMB/s, More Is BetterStream 2013-01-17Type: Triadi7-9700ktest6K12K18K24K30KSE +/- 9.82, N = 5SE +/- 76.38, N = 522963282051. (CC) gcc options: -O3 -march=native -fopenmp
OpenBenchmarking.orgMB/s, More Is BetterStream 2013-01-17Type: Triadi7-9700ktest5K10K15K20K25KMin: 22942.8 / Avg: 22962.72 / Max: 22995.4Min: 27992.6 / Avg: 28204.72 / Max: 283451. (CC) gcc options: -O3 -march=native -fopenmp

OpenBenchmarking.orgMB/s, More Is BetterStream 2013-01-17Type: Addi7-9700ktest6K12K18K24K30KSE +/- 5.14, N = 5SE +/- 100.26, N = 522921282241. (CC) gcc options: -O3 -march=native -fopenmp
OpenBenchmarking.orgMB/s, More Is BetterStream 2013-01-17Type: Addi7-9700ktest5K10K15K20K25KMin: 22903.6 / Avg: 22921.36 / Max: 22934.2Min: 27931.7 / Avg: 28223.7 / Max: 28399.61. (CC) gcc options: -O3 -march=native -fopenmp

Timed MAFFT Alignment

This test performs an alignment of 100 pyruvate decarboxylase sequences. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed MAFFT Alignment 7.392Multiple Sequence Alignmenti7-9700ktest0.63231.26461.89692.52923.1615SE +/- 0.04, N = 4SE +/- 0.07, N = 122.692.811. (CC) gcc options: -std=c99 -O3 -lm -lpthread
OpenBenchmarking.orgSeconds, Fewer Is BetterTimed MAFFT Alignment 7.392Multiple Sequence Alignmenti7-9700ktest246810Min: 2.62 / Avg: 2.69 / Max: 2.82Min: 2.57 / Avg: 2.81 / Max: 3.211. (CC) gcc options: -std=c99 -O3 -lm -lpthread

Gcrypt Library

This is a benchmark of libgcrypt's integrated benchmark with the CAMELLIA256-ECB cipher and 100 repetitions. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMicroseconds, Fewer Is BetterGcrypt Library 1.4.4CAMELLIA256-ECB Cipheri7-9700k30060090012001500SE +/- 17.64, N = 315931. (CC) gcc options: -O2 -fvisibility=hidden

Crafty

This is a performance test of Crafty, an advanced open-source chess engine. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgNodes Per Second, More Is BetterCrafty 25.2Elapsed Timei7-9700k2M4M6M8M10MSE +/- 20623.49, N = 395744091. (CC) gcc options: -pthread -lstdc++ -fprofile-use -lm

TSCP

This is a performance test of TSCP, Tom Kerrigan's Simple Chess Program, which has a built-in performance benchmark. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgNodes Per Second, More Is BetterTSCP 1.81AI Chess Performancei7-9700ktest400K800K1200K1600K2000KSE +/- 4226.34, N = 5SE +/- 2743.20, N = 5166906710147271. (CC) gcc options: -O3 -march=native
OpenBenchmarking.orgNodes Per Second, More Is BetterTSCP 1.81AI Chess Performancei7-9700ktest300K600K900K1200K1500KMin: 1658969 / Avg: 1669066.6 / Max: 1679201Min: 1008750 / Avg: 1014726.6 / Max: 10237501. (CC) gcc options: -O3 -march=native

TTSIOD 3D Renderer

A portable GPL 3D software renderer that supports OpenMP and Intel Threading Building Blocks with many different rendering modes. This version does not use OpenGL but is entirely CPU/software based. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgFPS, More Is BetterTTSIOD 3D Renderer 2.3bPhong Rendering With Soft-Shadow Mappingi7-9700k70140210280350SE +/- 2.71, N = 33351. (CXX) g++ options: -O3 -fomit-frame-pointer -ffast-math -mtune=native -flto -msse -mrecip -mfpmath=sse -msse2 -mssse3 -lSDL -lpthread -fopenmp -fwhole-program -lstdc++

GraphicsMagick

This is a test of GraphicsMagick with its OpenMP implementation that performs various imaging tests to stress the system's CPU. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30HWB Color Spacei7-9700ktest60120180240300SE +/- 0.33, N = 3293253-std=gnu99-lwebp -lwebpmux -llcms2 -ljasper -lSM -lICE -llzma -lbz2 -lxml21. (CC) gcc options: -fopenmp -O2 -pthread -ltiff -ljpeg -lXext -lX11 -lz -lm -lgomp -lpthread
OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30HWB Color Spacei7-9700ktest50100150200250Min: 292 / Avg: 292.67 / Max: 2931. (CC) gcc options: -fopenmp -O2 -pthread -ltiff -ljpeg -lXext -lX11 -lz -lm -lgomp -lpthread

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Local Adaptive Thresholdingi7-9700ktest306090120150129138-std=gnu99-lwebp -lwebpmux -llcms2 -ljasper -lSM -lICE -llzma -lbz2 -lxml21. (CC) gcc options: -fopenmp -O2 -pthread -ltiff -ljpeg -lXext -lX11 -lz -lm -lgomp -lpthread

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Sharpeni7-9700ktest4080120160200SE +/- 0.67, N = 3SE +/- 2.41, N = 6108186-std=gnu99-lwebp -lwebpmux -llcms2 -ljasper -lSM -lICE -llzma -lbz2 -lxml21. (CC) gcc options: -fopenmp -O2 -pthread -ltiff -ljpeg -lXext -lX11 -lz -lm -lgomp -lpthread
OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Sharpeni7-9700ktest306090120150Min: 107 / Avg: 107.67 / Max: 109Min: 174 / Avg: 186 / Max: 1891. (CC) gcc options: -fopenmp -O2 -pthread -ltiff -ljpeg -lXext -lX11 -lz -lm -lgomp -lpthread

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Resizingi7-9700ktest50100150200250SE +/- 0.88, N = 3235234-std=gnu99-lwebp -lwebpmux -llcms2 -ljasper -lSM -lICE -llzma -lbz2 -lxml21. (CC) gcc options: -fopenmp -O2 -pthread -ltiff -ljpeg -lXext -lX11 -lz -lm -lgomp -lpthread
OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.30Resizingi7-9700ktest4080120160200Min: 234 / Avg: 235.33 / Max: 2371. (CC) gcc options: -fopenmp -O2 -pthread -ltiff -ljpeg -lXext -lX11 -lz -lm -lgomp -lpthread

Himeno Benchmark

The Himeno benchmark is a linear solver of pressure Poisson using a point-Jacobi method. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMFLOPS, More Is BetterHimeno Benchmark 3.0Poisson Pressure Solveri7-9700ktest6001200180024003000SE +/- 50.62, N = 3SE +/- 2.79, N = 3294212781. (CC) gcc options: -O3 -mavx2
OpenBenchmarking.orgMFLOPS, More Is BetterHimeno Benchmark 3.0Poisson Pressure Solveri7-9700ktest5001000150020002500Min: 2847.81 / Avg: 2942.46 / Max: 3020.92Min: 1273.99 / Avg: 1278.42 / Max: 1283.571. (CC) gcc options: -O3 -mavx2

7-Zip Compression

This is a test of 7-Zip using p7zip with its integrated benchmark feature or upstream 7-Zip for the Windows x64 build. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMIPS, More Is Better7-Zip Compression 16.02Compress Speed Testi7-9700ktest10K20K30K40K50KSE +/- 268.75, N = 3SE +/- 140.35, N = 336826453591. (CXX) g++ options: -pipe -lpthread
OpenBenchmarking.orgMIPS, More Is Better7-Zip Compression 16.02Compress Speed Testi7-9700ktest8K16K24K32K40KMin: 36338 / Avg: 36826.33 / Max: 37265Min: 45148 / Avg: 45359.33 / Max: 456251. (CXX) g++ options: -pipe -lpthread

C-Ray

This is a test of C-Ray, a simple raytracer designed to test the floating-point CPU performance. This test is multi-threaded (16 threads per core), will shoot 8 rays per pixel for anti-aliasing, and will generate a 1600 x 1200 image. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterC-Ray 1.1Total Time - 4K, 16 Rays Per Pixeli7-9700ktest20406080100SE +/- 0.40, N = 3SE +/- 0.01, N = 395.3565.121. (CC) gcc options: -lm -lpthread -O3
OpenBenchmarking.orgSeconds, Fewer Is BetterC-Ray 1.1Total Time - 4K, 16 Rays Per Pixeli7-9700ktest20406080100Min: 94.6 / Avg: 95.35 / Max: 95.94Min: 65.11 / Avg: 65.12 / Max: 65.131. (CC) gcc options: -lm -lpthread -O3

Parallel BZIP2 Compression

This test measures the time needed to compress a file (a .tar package of the Linux kernel source code) using BZIP2 compression. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterParallel BZIP2 Compression 1.1.12256MB File Compressioni7-9700ktest1.2782.5563.8345.1126.39SE +/- 0.01, N = 3SE +/- 0.01, N = 35.684.081. (CXX) g++ options: -O2 -pthread -lbz2 -lpthread
OpenBenchmarking.orgSeconds, Fewer Is BetterParallel BZIP2 Compression 1.1.12256MB File Compressioni7-9700ktest246810Min: 5.66 / Avg: 5.68 / Max: 5.69Min: 4.06 / Avg: 4.08 / Max: 4.11. (CXX) g++ options: -O2 -pthread -lbz2 -lpthread

POV-Ray

This is a test of POV-Ray, the Persistence of Vision Raytracer. POV-Ray is used to create 3D graphics using ray-tracing. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterPOV-Ray 3.7.0.7Trace Timei7-9700k1632486480SE +/- 0.31, N = 373.661. (CXX) g++ options: -pipe -O3 -ffast-math -march=native -pthread -lSDL -lpthread -lX11 -ltiff -ljpeg -lpng -lz -lrt -lm -lboost_thread -lboost_system

Smallpt

Smallpt is a C++ global illumination renderer written in less than 100 lines of code. Global illumination is done via unbiased Monte Carlo path tracing and there is multi-threading support via the OpenMP library. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterSmallpt 1.0Global Illumination Renderer; 128 Samplesi7-9700ktest918273645SE +/- 0.44, N = 12SE +/- 0.01, N = 339.4011.431. (CXX) g++ options: -fopenmp -O3
OpenBenchmarking.orgSeconds, Fewer Is BetterSmallpt 1.0Global Illumination Renderer; 128 Samplesi7-9700ktest816243240Min: 36.97 / Avg: 39.4 / Max: 41.64Min: 11.42 / Avg: 11.43 / Max: 11.451. (CXX) g++ options: -fopenmp -O3

FLAC Audio Encoding

This test times how long it takes to encode a sample WAV file to FLAC format five times. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterFLAC Audio Encoding 1.3.2WAV To FLACi7-9700ktest3691215SE +/- 0.07, N = 5SE +/- 0.03, N = 59.5910.11-logg1. (CXX) g++ options: -O2 -fvisibility=hidden -lm
OpenBenchmarking.orgSeconds, Fewer Is BetterFLAC Audio Encoding 1.3.2WAV To FLACi7-9700ktest3691215Min: 9.36 / Avg: 9.59 / Max: 9.71Min: 9.99 / Avg: 10.11 / Max: 10.161. (CXX) g++ options: -O2 -fvisibility=hidden -lm

LAME MP3 Encoding

LAME is an MP3 encoder licensed under the LGPL. This test measures the time required to encode a WAV file to MP3 format. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterLAME MP3 Encoding 3.100WAV To MP3i7-9700ktest816243240SE +/- 0.18, N = 3SE +/- 0.01, N = 325.5934.20-lncurses1. (CC) gcc options: -lm
OpenBenchmarking.orgSeconds, Fewer Is BetterLAME MP3 Encoding 3.100WAV To MP3i7-9700ktest714212835Min: 25.3 / Avg: 25.59 / Max: 25.93Min: 34.19 / Avg: 34.2 / Max: 34.221. (CC) gcc options: -lm

FFmpeg

This test uses FFmpeg for testing the system's audio/video encoding performance. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterFFmpeg 4.0.2H.264 HD To NTSC DVi7-9700k0.84381.68762.53143.37524.219SE +/- 0.02, N = 33.751. (CC) gcc options: -lavdevice -lavfilter -lavformat -lavcodec -lswresample -lswscale -lavutil -lm -lxcb -lxcb-shm -lxcb-shape -lxcb-xfixes -lasound -pthread -std=c11 -fomit-frame-pointer -O3 -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -MMD -MF -MT

OpenSSL

OpenSSL is an open-source toolkit that implements SSL (Secure Sockets Layer) and TLS (Transport Layer Security) protocols. This test measures the RSA 4096-bit performance of OpenSSL. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSigns Per Second, More Is BetterOpenSSL 1.1.1RSA 4096-bit Performancei7-9700ktest5001000150020002500SE +/- 10.88, N = 3SE +/- 0.93, N = 3220617081. (CC) gcc options: -pthread -m64 -O3 -lssl -lcrypto -ldl
OpenBenchmarking.orgSigns Per Second, More Is BetterOpenSSL 1.1.1RSA 4096-bit Performancei7-9700ktest400800120016002000Min: 2184.6 / Avg: 2206.17 / Max: 2219.5Min: 1706.5 / Avg: 1708.33 / Max: 1709.51. (CC) gcc options: -pthread -m64 -O3 -lssl -lcrypto -ldl

Apache Benchmark

This is a test of ab, which is the Apache benchmark program. This test profile measures how many requests per second a given system can sustain when carrying out 1,000,000 requests with 100 requests being carried out concurrently. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgRequests Per Second, More Is BetterApache Benchmark 2.4.29Static Web Page Servingi7-9700ktest5K10K15K20K25KSE +/- 137.01, N = 3SE +/- 43.91, N = 322745245021. (CC) gcc options: -shared -fPIC -O2 -pthread
OpenBenchmarking.orgRequests Per Second, More Is BetterApache Benchmark 2.4.29Static Web Page Servingi7-9700ktest4K8K12K16K20KMin: 22578.88 / Avg: 22745.04 / Max: 23016.82Min: 24418.36 / Avg: 24501.79 / Max: 24567.251. (CC) gcc options: -shared -fPIC -O2 -pthread