Рассмотрим стандартную платформу на основе системной логики Intel 945G.
CPU: Intel(R) Atom(TM) CPU 330 @ 1.60GHz (1601.97-MHz K8-class CPU)
Origin = «GenuineIntel» Id = 0x106c2 Family = 6 Model = 1c Stepping = 2
Features=0xbfe9fbff MCA,CMOV,PAT,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
Features2=0x40e31d
AMD Features=0×20000800
AMD Features2=0×1
TSC: P-state invariant
Base Board Information
Manufacturer: ASRock
Product Name: A330GC
Отметим наличие технологии Hyper-Threading (HTT), благодаря которой FreeBSD 8.2 видит 4 логических процессорных ядра:
FreeBSD/SMP: 1 package(s) x 2 core(s) x 2 HTT threads
CPU 1: 0.0% user, 0.0% nice, 0.0% system, 0.0% interrupt, 100% idle
CPU 2: 0.9% user, 0.0% nice, 0.0% system, 0.0% interrupt, 99.1% idle
CPU 3: 0.0% user, 0.0% nice, 0.0% system, 0.0% interrupt, 100% idle
Mem: 20M Active, 19M Inact, 55M Wired, 284K Cache, 43M Buf, 878M Free
Swap: 4096M Total, 4096M Free
PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND
11 root 171 ki31 0K 64K CPU3 3 875:31 100.00% {idle: cpu3}
11 root 171 ki31 0K 64K CPU1 1 865:19 100.00% {idle: cpu1}
11 root 171 ki31 0K 64K RUN 2 861:38 100.00% {idle: cpu2}
11 root 171 ki31 0K 64K CPU0 0 857:23 100.00% {idle: cpu0}
Соответствующее SMP ядро ставится автоматически при установке FreeBSD 8.x.
Синтетически тесты сообщают следующее.
Результаты ubench 0.32:
Ubench MEM: 62101
--------------------
Ubench AVG: 116460
Ubench Single CPU: 53187 (0.40s)
Ubench Single MEM: 38590 (0.40s)
-----------------------------------
Ubench Single AVG: 45888
Подозрительно высокая производительность и явная эффективность использования HTT налицо. Многопоточный тест показал более, чем в 3 раза попугаев, чем однопоточный. В тоже время по памяти многопоточный тест эффективнее, чем однопоточный, всего на 40%.
Результаты unixbench:
BYTE UNIX Benchmarks (Version 4.1.0)
System -- df.bavariya.net
Start Benchmark Run: Tue Jul 19 16:55:19 EEST 2011
1 interactive users.
4:55PM up 13:02, 1 user, load averages: 0.05, 0.01, 0.00
-r-xr-xr-x 1 root wheel 136696 Feb 17 04:18 /bin/sh
/bin/sh: ELF 64-bit LSB executable, x86-64, version 1 (FreeBSD), dynamically linked (uses shared libs), FreeBSD 8.2, stripped
/dev/ad0s1e 63501634 1416092 57005412 2% /usr
Dhrystone 2 using register variables 3753265.3 lps (10.0 secs, 10 samples)
Double-Precision Whetstone 746.7 MWIPS (10.0 secs, 10 samples)
System Overhead 301347.8 lps (10.0 secs, 10 samples)
Pipe Throughput 419598.6 lps (10.0 secs, 10 samples)
Pipe-based Context Switching 41040.0 lps (10.0 secs, 10 samples)
Process Creation 2321.9 lps (30.1 secs, 3 samples)
Execl Throughput 691.6 lps (29.8 secs, 3 samples)
File Read 1024 bufsize 2000 maxblocks 339543.0 KBps (30.0 secs, 3 samples)
File Write 1024 bufsize 2000 maxblocks 55820.0 KBps (30.0 secs, 3 samples)
File 1024 bufsize 2000 maxblocks 54528.0 KBps (30.0 secs, 3 samples)
File Read 256 bufsize 500 maxblocks 96900.0 KBps (30.0 secs, 3 samples)
File Write 256 bufsize 500 maxblocks 32794.0 KBps (30.0 secs, 3 samples)
File 256 bufsize 500 maxblocks 20268.0 KBps (30.0 secs, 3 samples)
File Read 4096 bufsize 8000 maxblocks 891094.0 KBps (30.0 secs, 3 samples)
File Write 4096 bufsize 8000 maxblocks 60882.0 KBps (30.0 secs, 3 samples)
File 4096 bufsize 8000 maxblocks 51620.0 KBps (30.0 secs, 3 samples)
Shell Scripts (1 concurrent) 1866.9 lpm (60.2 secs, 3 samples)
Shell Scripts (8 concurrent) 412.4 lpm (60.2 secs, 3 samples)
Shell Scripts (16 concurrent) 212.1 lpm (60.2 secs, 3 samples)
Arithmetic Test (type = short) 211005.7 lps (10.0 secs, 3 samples)
Arithmetic Test (type = int) 216656.5 lps (10.0 secs, 3 samples)
Arithmetic Test (type = long) 92622.0 lps (10.0 secs, 3 samples)
Arithmetic Test (type = float) 315197.1 lps (10.0 secs, 3 samples)
Arithmetic Test (type = double) 197622.3 lps (10.0 secs, 3 samples)
Arithoh 132230382.8 lps (10.0 secs, 3 samples)
C Compiler Throughput 514.6 lpm (60.2 secs, 3 samples)
Dc: sqrt(2) to 99 decimal places 57222.4 lpm (30.1 secs, 3 samples)
Recursion Test--Tower of Hanoi 49158.4 lps (20.1 secs, 3 samples)
INDEX VALUES
TEST BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 3753265.3 321.6
Double-Precision Whetstone 55.0 746.7 135.8
Execl Throughput 43.0 691.6 160.8
File 1024 bufsize 2000 maxblocks 3960.0 54528.0 137.7
File 256 bufsize 500 maxblocks 1655.0 20268.0 122.5
File 4096 bufsize 8000 maxblocks 5800.0 51620.0 89.0
Pipe Throughput 12440.0 419598.6 337.3
Pipe-based Context Switching 4000.0 41040.0 102.6
Process Creation 126.0 2321.9 184.3
Shell Scripts (8 concurrent) 6.0 412.4 687.3
System Overhead 15000.0 301347.8 200.9
=========
FINAL SCORE 186.1
При сравнении с результатами, полученными на процессоре Intel Рentium III Tualantin (R) 1.13 GHz
Shell Scripts (8 concurrent) 139.3 lpm (60.0 secs, 3 samples)
Shell Scripts (16 concurrent) 68.9 lpm (60.0 secs, 3 samples)
Arithmetic Test (type = short) 262795.1 lps (10.0 secs, 3 samples)
Arithmetic Test (type = int) 288812.5 lps (10.0 secs, 3 samples)
Arithmetic Test (type = long) 284094.8 lps (10.0 secs, 3 samples)
Arithmetic Test (type = float) 340723.0 lps (10.0 secs, 3 samples)
Arithmetic Test (type = double) 259825.1 lps (10.0 secs, 3 samples)
Видно, что одно ядро процессора Atom само по себе весьма «маргинально», в ряде тестов Atom откровенно уступает Pentium III. Однако в многозадачности он существенно эффективнее. Можно говорить о двух полноценных ядрах, эффект от HTT не велик, 16 потоков выполняются примерно в 8 раз дольше, чем 1.
Результаты nbench:
INTEGER INDEX : 26.998
FLOATING-POINT INDEX: 14.356
Baseline (MSDOS*) : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0
==============================LINUX DATA BELOW===============================
CPU :
L2 Cache :
OS : FreeBSD 8.2-RELEASE
C compiler : cc
libc : /lib/libc.so.7
MEMORY INDEX : 7.561
INTEGER INDEX : 6.178
FLOATING-POINT INDEX: 7.962
Baseline (LINUX) : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38
По сравнению с базовыми Pentium 90 и AMD K6 233 результаты конечно же откровенно слабые.
В общем видно, что за счет наличия HTT и двухядерности процессор Atom 330 всё-таки превосходит одноядерные десктопные процессоры, однако успупает практически всем процессорами линейки Intel Core 2 Duo или Duo Core, уступает более «матерому» процессору Atom 525 и в общем несколько уступает даже двухядерному процессору для ноутбука Intel Pentium(R) Dual CPU T2330 @ 1.60GHz.