Oracle says about T4 as the very fast CPU:
But in our tests we obtained very other results. About 4 times slowly than x86-64.
With the help of my friends Alex and Dmitry we did the our own tpc.org performance table:
-------------------------------------------------------------
Time in sec CPUSPEEDNW
SuperMicro Xeon X5675 3.07GHz 35 1399
Exadata X2-2 2974 UTF8
Xeon X5675 3.07GHz 36 2979 ISO
2961 WIN
Core2 Quad Q9550 2.83GHz 44
Core2 Quad Q9505 2.83GHz 46 1705
Oracle Database Appliance 56 678
X5675 3.07GHz
IBM,AM720_090, PowerPC_POWER7 74 719
3108MHz
IBM,7998-61X, POWER6, 4005MHz 115 738
Sun SPARC T4 127 1178
Sun SPARC Enterprise M4000 123 626
2150MHz
Sun Fire V440 1593MHz 177 774
Sun Fire V490, 1050MGz 284 680
SPARC IV
SuperDome 9000/800/S16K-A, 1079 146
PA8700 3.1 875MHz
SuperMicro Xeon X5675 3.07GHz 35 1399
Exadata X2-2 2974 UTF8
Xeon X5675 3.07GHz 36 2979 ISO
2961 WIN
Core2 Quad Q9550 2.83GHz 44
Core2 Quad Q9505 2.83GHz 46 1705
Oracle Database Appliance 56 678
X5675 3.07GHz
IBM,AM720_090, PowerPC_POWER7 74 719
3108MHz
IBM,7998-61X, POWER6, 4005MHz 115 738
Sun SPARC T4 127 1178
Sun SPARC Enterprise M4000 123 626
2150MHz
Sun Fire V440 1593MHz 177 774
Sun Fire V490, 1050MGz 284 680
SPARC IV
SuperDome 9000/800/S16K-A, 1079 146
PA8700 3.1 875MHz
-------------------------------------------------------------
What we did ?
We run the very simple test script, which test only one core in system and not uses memory and IO. So only register operations are important :
SQL> SET ECHO ON;
SET TIMING ON;
SQL> SQL> declare
2 a number := 0;
3 begin
4 for i in 1 .. 1e9
5 loop
6 a := a + 1;
7 end loop;
8 end;
9 /
Set lines 1000 pages 1000
select * from sys.aux_stats$;
As a result we can say that:
- T4 is one of slowest cores
- the best choise is x86-64 !
Первый вопрос: насколько хорошо PL/SQL может распараллелить данный цикл.
ReplyDeleteВторой вопрос, какой установлен threading на процессоре:
ldm ls -l | grep threading
Третий вопрос, была ли прочтена статья "Tuning the SPARC CPU to Optimize Workload Performance on SPARC T4"
http://www.oracle.com/technetwork/server-storage/vm/ovm-sparc-t4-505241.pdf
А то может быть надо просто настроить систему хоть маленько.
> Третий вопрос, была ли прочтена статья
ReplyDeleteКак статью не читай, T4 быстрее не станет ))
Привет,
ReplyDeleteЦикл PL/SQL не распараллеливается. Т.е наш запрос тестирует всегда одно ядро.
Ну а насчет threading - пробовали. Ничего хорошего выжать не получилось. Рома - спроси Куксу.
Встречный вопрос насчет threading : в какой режим его переключать, если в одном сервере 2 БД, и одна требует многопоточности (много ядер неважно какой скорости), а другая - небольшого числа быстрых ядер ? Собственно, аналогичная ситуация может быть с разными модулями одного приложения в одной БД.
За статью - спасибо! почитаем. :)
В том что цикл PL/SQL не распараллеливается нет вины процессора, а вина программистов, пишущих oracle. Получается, что в T4 не самый slow core, а самый slow single thread. Как-то так.
ReplyDeleteДве базы разнести на два логических домена с разными threading :)
Если разные модули в одной базе, то переписать их на java/C.
Существенное уточнение результатов для Oracle Database Appliance 2.2.0.0.0 (Oracle Database EE 11.2.0.3.2)
ReplyDeleteIntel Xeon X5675 3.07GHz
Time in sec = 39
CPUSPEEDNW = 2704
спасибо, юрий, за наглядный тест
ReplyDeleteOracle и сам понимает, для чего T4 подходят:
http://www.oracle.com/us/products/servers-storage/servers/sparc-enterprise/t-series/overview/index.html
Key Applications
Application virtualization and consolidation
Web and Java applications
Application development
Mission-critical enterprise applications (ERP, CRM, SCM)
Databases
... бд упоминаются только на 5-м месте!
IBM всё ещё как-то необоснованно упорствует)