Docker testing on Debian GNU/Linux 9 via the Phoronix Test Suite.
Hitachi HDS72101 - AMD Athlon II X2 270 Processor: AMD Athlon II X2 270 @ 3.40GHz (2 Cores), Motherboard: Gigabyte GA-78LMT-S2P (F2 BIOS), Memory: 16384MB, Disk: 1000GB Hitachi HDS72101, Graphics: radeondrmfb
OS: Debian GNU/Linux 9, Kernel: 5.1.7-arch1-1-ARCH (x86_64), Compiler: GCC 6.3.0 20170516, File-System: ext4, Screen Resolution: 1920x1080, System Layer: Docker
Environment Notes: PHP_LDFLAGS=-Wl-O1-Wl--hash-style=both-pie PHP_CFLAGS=-fstack-protector-strong-fpic-fpie-O2 PHP_CPPFLAGS=-fstack-protector-strong-fpic-fpie-O2Compiler Notes: --build=x86_64-linux-gnu --disable-browser-plugin --disable-vtable-verify --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-gnu-unique-object --enable-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --enable-libmpx --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-nls --enable-objc-gc=auto --enable-plugin --enable-shared --enable-threads=posix --host=x86_64-linux-gnu --program-prefix=x86_64-linux-gnu- --target=x86_64-linux-gnu --with-abi=m64 --with-arch-32=i686 --with-arch-directory=amd64 --with-default-libstdcxx-abi=new --with-multilib-list=m32,m64,mx32 --with-target-system-zlib --with-tune=generic -vDisk Notes: MQ-DEADLINE / relatime,rwProcessor Notes: Scaling Governor: acpi-cpufreq schedutilPython Notes: Python 2.7.13 + Python 3.5.3Security Notes: l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Not affected + spectre_v1: Mitigation of __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline STIBP: disabled RSB filling
linux-cfs OpenBenchmarking.org Phoronix Test Suite AMD Athlon II X2 270 @ 3.40GHz (2 Cores) Gigabyte GA-78LMT-S2P (F2 BIOS) 16384MB 1000GB Hitachi HDS72101 radeondrmfb Debian GNU/Linux 9 5.1.7-arch1-1-ARCH (x86_64) GCC 6.3.0 20170516 ext4 1920x1080 Docker Processor Motherboard Memory Disk Graphics OS Kernel Compiler File-System Screen Resolution System Layer Linux-cfs Performance System Logs - PHP_LDFLAGS=-Wl-O1-Wl--hash-style=both-pie PHP_CFLAGS=-fstack-protector-strong-fpic-fpie-O2 PHP_CPPFLAGS=-fstack-protector-strong-fpic-fpie-O2 - --build=x86_64-linux-gnu --disable-browser-plugin --disable-vtable-verify --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-gnu-unique-object --enable-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --enable-libmpx --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-nls --enable-objc-gc=auto --enable-plugin --enable-shared --enable-threads=posix --host=x86_64-linux-gnu --program-prefix=x86_64-linux-gnu- --target=x86_64-linux-gnu --with-abi=m64 --with-arch-32=i686 --with-arch-directory=amd64 --with-default-libstdcxx-abi=new --with-multilib-list=m32,m64,mx32 --with-target-system-zlib --with-tune=generic -v - MQ-DEADLINE / relatime,rw - Scaling Governor: acpi-cpufreq schedutil - Python 2.7.13 + Python 3.5.3 - l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Not affected + spectre_v1: Mitigation of __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline STIBP: disabled RSB filling
linux-cfs compress-7zip: Compress Speed Test apache: Static Web Page Serving c-ray: Total Time - 4K, 16 Rays Per Pixel compilebench: Compile compilebench: Initial Create compilebench: Read Compiled Tree dbench: 12 Clients dbench: 1 Clients fio: Rand Read - Linux AIO - No - Yes - 2MB - Default Test Directory fio: Rand Read - Linux AIO - No - Yes - 4KB - Default Test Directory fio: Rand Write - Linux AIO - No - Yes - 2MB - Default Test Directory fio: Rand Write - Linux AIO - No - Yes - 4KB - Default Test Directory fio: Seq Read - Linux AIO - No - Yes - 2MB - Default Test Directory fio: Seq Read - Linux AIO - No - Yes - 4KB - Default Test Directory fio: Seq Read - Linux AIO - No - Yes - 4KB - Default Test Directory fio: Seq Write - Linux AIO - No - Yes - 2MB - Default Test Directory fio: Seq Write - Linux AIO - No - Yes - 4KB - Default Test Directory fio: Seq Write - Linux AIO - No - Yes - 4KB - Default Test Directory fs-mark: 1000 Files, 1MB Size fs-mark: 5000 Files, 1MB Size, 4 Threads fs-mark: 4000 Files, 32 Sub Dirs, 1MB Size fs-mark: 1000 Files, 1MB Size, No Sync/FSync hackbench: 1 - Thread hackbench: 4 - Thread hackbench: 1 - Process hackbench: 16 - Thread hackbench: 4 - Process hackbench: 16 - Process encode-mp3: WAV To MP3 openssl: RSA 4096-bit Performance osbench: Create Files osbench: Create Threads osbench: Launch Programs osbench: Create Processes osbench: Memory Allocations compress-pbzip2: 256MB File Compression postmark: Disk Transaction Performance schbench: 8 - 4 sqlite: Timed SQLite Insertions stress-ng: Forking stress-ng: Semaphores stress-ng: Memory Copying stress-ng: Socket Activity stress-ng: Context Switching stress-ng: System V Message Passing mafft: Multiple Sequence Alignment x264: H.264 Video Encoding Hitachi HDS72101 - AMD Athlon II X2 270 5566 9042.70 708.66 320.18 222.45 1270.10 34.78 11.60 124 1.39 106.73 0.52 175 137 34767 172 111 28333 23.33 42.63 19.27 1112.33 56.53 164.83 49.58 512.75 139.37 392.10 63.12 195.90 25.65 37.87 196.78 80.11 162.78 35.45 2918 102101 536.37 3491.02 3766161.48 351.82 351.88 489981.78 518890.13 15.43 9.05 OpenBenchmarking.org
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.org Requests Per Second, More Is Better Apache Benchmark 2.4.29 Static Web Page Serving Hitachi HDS72101 - AMD Athlon II X2 270 2K 4K 6K 8K 10K SE +/- 106.51, N = 3 9042.70 1. (CC) gcc options: -shared -fPIC -O2 -pthread
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.org Seconds, Fewer Is Better C-Ray 1.1 Total Time - 4K, 16 Rays Per Pixel Hitachi HDS72101 - AMD Athlon II X2 270 150 300 450 600 750 SE +/- 2.39, N = 3 708.66 1. (CC) gcc options: -lm -lpthread -O3
Compile Bench Compilebench tries to age a filesystem by simulating some of the disk IO common in creating, compiling, patching, stating and reading kernel trees. It indirectly measures how well filesystems can maintain directory locality as the disk fills up and directories age. This current test is setup to use the makej mode with 10 initial directories Learn more via the OpenBenchmarking.org test page.
OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Compile Hitachi HDS72101 - AMD Athlon II X2 270 70 140 210 280 350 SE +/- 3.69, N = 3 320.18
OpenBenchmarking.org MB/s, More Is Better Dbench 4.0 1 Clients Hitachi HDS72101 - AMD Athlon II X2 270 3 6 9 12 15 SE +/- 0.00, N = 3 11.60 1. (CC) gcc options: -lpopt -O2
Flexible IO Tester Fio is an advanced disk benchmark that depends upon the kernel's AIO access library. Learn more via the OpenBenchmarking.org test page.
OpenBenchmarking.org MB/s, More Is Better Flexible IO Tester 3.1 Type: Random Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test Directory Hitachi HDS72101 - AMD Athlon II X2 270 30 60 90 120 150 124 1. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -lrt -laio -lz -lm -lpthread -ldl
OpenBenchmarking.org MB/s, More Is Better Flexible IO Tester 3.1 Type: Random Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory Hitachi HDS72101 - AMD Athlon II X2 270 0.3128 0.6256 0.9384 1.2512 1.564 SE +/- 0.01, N = 3 1.39 1. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -lrt -laio -lz -lm -lpthread -ldl
OpenBenchmarking.org MB/s, More Is Better Flexible IO Tester 3.1 Type: Random Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test Directory Hitachi HDS72101 - AMD Athlon II X2 270 20 40 60 80 100 SE +/- 2.02, N = 14 106.73 1. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -lrt -laio -lz -lm -lpthread -ldl
OpenBenchmarking.org MB/s, More Is Better Flexible IO Tester 3.1 Type: Random Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory Hitachi HDS72101 - AMD Athlon II X2 270 0.117 0.234 0.351 0.468 0.585 SE +/- 0.01, N = 12 0.52 1. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -lrt -laio -lz -lm -lpthread -ldl
OpenBenchmarking.org MB/s, More Is Better Flexible IO Tester 3.1 Type: Sequential Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test Directory Hitachi HDS72101 - AMD Athlon II X2 270 40 80 120 160 200 SE +/- 0.88, N = 3 175 1. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -lrt -laio -lz -lm -lpthread -ldl
OpenBenchmarking.org MB/s, More Is Better Flexible IO Tester 3.1 Type: Sequential Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory Hitachi HDS72101 - AMD Athlon II X2 270 30 60 90 120 150 SE +/- 0.33, N = 3 137 1. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -lrt -laio -lz -lm -lpthread -ldl
OpenBenchmarking.org IOPS, More Is Better Flexible IO Tester 3.1 Type: Sequential Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory Hitachi HDS72101 - AMD Athlon II X2 270 7K 14K 21K 28K 35K SE +/- 384.42, N = 3 34767 1. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -lrt -laio -lz -lm -lpthread -ldl
OpenBenchmarking.org MB/s, More Is Better Flexible IO Tester 3.1 Type: Sequential Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test Directory Hitachi HDS72101 - AMD Athlon II X2 270 40 80 120 160 200 172 1. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -lrt -laio -lz -lm -lpthread -ldl
OpenBenchmarking.org MB/s, More Is Better Flexible IO Tester 3.1 Type: Sequential Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory Hitachi HDS72101 - AMD Athlon II X2 270 20 40 60 80 100 SE +/- 0.33, N = 3 111 1. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -lrt -laio -lz -lm -lpthread -ldl
OpenBenchmarking.org IOPS, More Is Better Flexible IO Tester 3.1 Type: Sequential Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory Hitachi HDS72101 - AMD Athlon II X2 270 6K 12K 18K 24K 30K SE +/- 88.19, N = 3 28333 1. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -lrt -laio -lz -lm -lpthread -ldl
OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 5000 Files, 1MB Size, 4 Threads Hitachi HDS72101 - AMD Athlon II X2 270 10 20 30 40 50 SE +/- 0.84, N = 7 42.63 1. (CC) gcc options: -static
OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 4000 Files, 32 Sub Dirs, 1MB Size Hitachi HDS72101 - AMD Athlon II X2 270 5 10 15 20 25 SE +/- 0.15, N = 3 19.27 1. (CC) gcc options: -static
OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 1000 Files, 1MB Size, No Sync/FSync Hitachi HDS72101 - AMD Athlon II X2 270 200 400 600 800 1000 SE +/- 2.27, N = 3 1112.33 1. (CC) gcc options: -static
OpenBenchmarking.org Seconds, Fewer Is Better Hackbench Count: 4 - Type: Thread Hitachi HDS72101 - AMD Athlon II X2 270 40 80 120 160 200 SE +/- 4.36, N = 12 164.83 1. (CC) gcc options: -lpthread
OpenBenchmarking.org Seconds, Fewer Is Better Hackbench Count: 1 - Type: Process Hitachi HDS72101 - AMD Athlon II X2 270 11 22 33 44 55 SE +/- 1.05, N = 15 49.58 1. (CC) gcc options: -lpthread
OpenBenchmarking.org Seconds, Fewer Is Better Hackbench Count: 16 - Type: Thread Hitachi HDS72101 - AMD Athlon II X2 270 110 220 330 440 550 SE +/- 36.50, N = 9 512.75 1. (CC) gcc options: -lpthread
OpenBenchmarking.org Seconds, Fewer Is Better Hackbench Count: 4 - Type: Process Hitachi HDS72101 - AMD Athlon II X2 270 30 60 90 120 150 SE +/- 4.33, N = 12 139.37 1. (CC) gcc options: -lpthread
OpenBenchmarking.org Seconds, Fewer Is Better Hackbench Count: 16 - Type: Process Hitachi HDS72101 - AMD Athlon II X2 270 90 180 270 360 450 SE +/- 15.54, N = 9 392.10 1. (CC) gcc options: -lpthread
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.org Signs Per Second, More Is Better OpenSSL 1.1.1 RSA 4096-bit Performance Hitachi HDS72101 - AMD Athlon II X2 270 40 80 120 160 200 SE +/- 0.00, N = 3 195.90 1. (CC) gcc options: -pthread -m64 -O3 -lssl -lcrypto -ldl
OSBench OSBench is a collection of micro-benchmarks for measuring operating system primitives like time to create threads/processes, launching programs, creating files, and memory allocation. Learn more via the OpenBenchmarking.org test page.
OpenBenchmarking.org us Per Event, Fewer Is Better OSBench Test: Create Files Hitachi HDS72101 - AMD Athlon II X2 270 6 12 18 24 30 SE +/- 0.08, N = 3 25.65
OpenBenchmarking.org us Per Event, Fewer Is Better OSBench Test: Create Threads Hitachi HDS72101 - AMD Athlon II X2 270 9 18 27 36 45 SE +/- 0.42, N = 3 37.87
OpenBenchmarking.org us Per Event, Fewer Is Better OSBench Test: Launch Programs Hitachi HDS72101 - AMD Athlon II X2 270 40 80 120 160 200 SE +/- 0.54, N = 3 196.78
OpenBenchmarking.org us Per Event, Fewer Is Better OSBench Test: Create Processes Hitachi HDS72101 - AMD Athlon II X2 270 20 40 60 80 100 SE +/- 0.22, N = 3 80.11
OpenBenchmarking.org Ns Per Event, Fewer Is Better OSBench Test: Memory Allocations Hitachi HDS72101 - AMD Athlon II X2 270 40 80 120 160 200 SE +/- 0.61, N = 3 162.78
PostMark This is a test of NetApp's PostMark benchmark designed to simulate small-file testing similar to the tasks endured by web and mail servers. This test profile will set PostMark to perform 25,000 transactions with 500 files simultaneously with the file sizes ranging between 5 and 512 kilobytes. Learn more via the OpenBenchmarking.org test page.
OpenBenchmarking.org TPS, More Is Better PostMark 1.51 Disk Transaction Performance Hitachi HDS72101 - AMD Athlon II X2 270 600 1200 1800 2400 3000 SE +/- 11.67, N = 3 2918 1. (CC) gcc options: -O3
Schbench This is a benchmark of Schbench, a Linux kernel scheduler benchmark developed by Facebook. Learn more via the OpenBenchmarking.org test page.
OpenBenchmarking.org usec, 99.9th Latency Percentile, Fewer Is Better Schbench Message Threads: 8 - Workers Per Message Thread: 4 Hitachi HDS72101 - AMD Athlon II X2 270 20K 40K 60K 80K 100K SE +/- 1824.56, N = 15 102101 1. (CC) gcc options: -O2 -lpthread
SQLite This is a simple benchmark of SQLite. At present this test profile just measures the time to perform a pre-defined number of insertions on an indexed database. Learn more via the OpenBenchmarking.org test page.
OpenBenchmarking.org Seconds, Fewer Is Better SQLite 3.22 Timed SQLite Insertions Hitachi HDS72101 - AMD Athlon II X2 270 120 240 360 480 600 SE +/- 7.50, N = 3 536.37 1. (CC) gcc options: -O2 -lz -ldl -lpthread
OpenBenchmarking.org Bogo Ops/s, More Is Better Stress-NG 0.07.26 Test: Semaphores Hitachi HDS72101 - AMD Athlon II X2 270 800K 1600K 2400K 3200K 4000K SE +/- 107480.92, N = 15 3766161.48 1. (CC) gcc options: -O2 -std=gnu99 -lm -lz -lcrypt -lrt -lpthread -laio -lc
OpenBenchmarking.org Bogo Ops/s, More Is Better Stress-NG 0.07.26 Test: Memory Copying Hitachi HDS72101 - AMD Athlon II X2 270 80 160 240 320 400 SE +/- 0.70, N = 3 351.82 1. (CC) gcc options: -O2 -std=gnu99 -lm -lz -lcrypt -lrt -lpthread -laio -lc
OpenBenchmarking.org Bogo Ops/s, More Is Better Stress-NG 0.07.26 Test: Socket Activity Hitachi HDS72101 - AMD Athlon II X2 270 80 160 240 320 400 SE +/- 4.38, N = 3 351.88 1. (CC) gcc options: -O2 -std=gnu99 -lm -lz -lcrypt -lrt -lpthread -laio -lc
OpenBenchmarking.org Bogo Ops/s, More Is Better Stress-NG 0.07.26 Test: Context Switching Hitachi HDS72101 - AMD Athlon II X2 270 100K 200K 300K 400K 500K SE +/- 6740.68, N = 15 489981.78 1. (CC) gcc options: -O2 -std=gnu99 -lm -lz -lcrypt -lrt -lpthread -laio -lc
OpenBenchmarking.org Bogo Ops/s, More Is Better Stress-NG 0.07.26 Test: System V Message Passing Hitachi HDS72101 - AMD Athlon II X2 270 110K 220K 330K 440K 550K SE +/- 24056.34, N = 15 518890.13 1. (CC) gcc options: -O2 -std=gnu99 -lm -lz -lcrypt -lrt -lpthread -laio -lc
x264 This is a simple test of the x264 encoder run on the CPU (OpenCL support disabled) with a sample video file. Learn more via the OpenBenchmarking.org test page.
OpenBenchmarking.org Frames Per Second, More Is Better x264 2018-09-25 H.264 Video Encoding Hitachi HDS72101 - AMD Athlon II X2 270 3 6 9 12 15 SE +/- 0.11, N = 5 9.05 1. (CC) gcc options: -ldl -m64 -lm -lpthread -O3 -ffast-math -std=gnu99 -fPIC -fomit-frame-pointer -fno-tree-vectorize
Hitachi HDS72101 - AMD Athlon II X2 270 Processor: AMD Athlon II X2 270 @ 3.40GHz (2 Cores), Motherboard: Gigabyte GA-78LMT-S2P (F2 BIOS), Memory: 16384MB, Disk: 1000GB Hitachi HDS72101, Graphics: radeondrmfb
OS: Debian GNU/Linux 9, Kernel: 5.1.7-arch1-1-ARCH (x86_64), Compiler: GCC 6.3.0 20170516, File-System: ext4, Screen Resolution: 1920x1080, System Layer: Docker
Environment Notes: PHP_LDFLAGS=-Wl-O1-Wl--hash-style=both-pie PHP_CFLAGS=-fstack-protector-strong-fpic-fpie-O2 PHP_CPPFLAGS=-fstack-protector-strong-fpic-fpie-O2Compiler Notes: --build=x86_64-linux-gnu --disable-browser-plugin --disable-vtable-verify --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-gnu-unique-object --enable-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --enable-libmpx --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-nls --enable-objc-gc=auto --enable-plugin --enable-shared --enable-threads=posix --host=x86_64-linux-gnu --program-prefix=x86_64-linux-gnu- --target=x86_64-linux-gnu --with-abi=m64 --with-arch-32=i686 --with-arch-directory=amd64 --with-default-libstdcxx-abi=new --with-multilib-list=m32,m64,mx32 --with-target-system-zlib --with-tune=generic -vDisk Notes: MQ-DEADLINE / relatime,rwProcessor Notes: Scaling Governor: acpi-cpufreq schedutilPython Notes: Python 2.7.13 + Python 3.5.3Security Notes: l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Not affected + spectre_v1: Mitigation of __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline STIBP: disabled RSB filling
Testing initiated at 12 June 2019 06:05 by user root.