Subject | Firebird performance on CentOS 6 (64bit) vs Win 7 (64bit) |
---|---|
Author | trskopo |
Post date | 2011-12-18T04:13:57Z |
Hi all,
I did a little test about Firebird 2.5 SuperServer 64 bit performance on these 2 OS.
Both running on the same cpu, others setting are
1) CentOS 6 : RAM 2GB, file ext4, database on disk
2) Win 7 : RAM 4GB, database on RAM
Table structure for this test :
CREATE TABLE DT_LOG
(
DT Date DEFAULT CURRENT_DATE,
CD Char(4) NOT NULL,
STR Varchar(80),
INP_AT Time DEFAULT CURRENT_TIME
);
CREATE INDEX IDX_DT_LOG1 ON DT_LOG (CD);
CREATE INDEX IDX_DT_LOG2 ON DT_LOG (DT);
CREATE INDEX IDX_DT_LOG3 ON DT_LOG (DT,CD);
SQL statement issued :
SELECT a.DT, a.CD, a.STR, a.INP_AT
FROM DT_LOG a
where a.INP_AT = (select max(c.INP_AT) from DT_LOG c where c.CD = a.cd and c.DT = '11/17/11')
and dt = '11/17/11'
order by cd
Result and executing time :
1) CentOS 6
Executing...
Done.
8468502 fetches, 2 marks, 4244984 reads, 2 writes.
0 inserts, 0 updates, 0 deletes, 4144063 index, 0 seq.
Delta memory: 219264 bytes.
Total execution time: 43.510s
Script execution finished.
2) Win 7
Executing...
Done.
8432907 fetches, 4 marks, 1294 reads, 4 writes.
0 inserts, 0 updates, 0 deletes, 4144031 index, 0 seq.
Delta memory: 104600 bytes.
Total execution time: 6.854s
Script execution finished.
I wonder, why CentOS reads so many records (4244984 reads) compare to Win 7 (1294 reads).
Maybe someone could give me an explanation?
Thanks in advance.
Best regards,
Sugiarto
I did a little test about Firebird 2.5 SuperServer 64 bit performance on these 2 OS.
Both running on the same cpu, others setting are
1) CentOS 6 : RAM 2GB, file ext4, database on disk
2) Win 7 : RAM 4GB, database on RAM
Table structure for this test :
CREATE TABLE DT_LOG
(
DT Date DEFAULT CURRENT_DATE,
CD Char(4) NOT NULL,
STR Varchar(80),
INP_AT Time DEFAULT CURRENT_TIME
);
CREATE INDEX IDX_DT_LOG1 ON DT_LOG (CD);
CREATE INDEX IDX_DT_LOG2 ON DT_LOG (DT);
CREATE INDEX IDX_DT_LOG3 ON DT_LOG (DT,CD);
SQL statement issued :
SELECT a.DT, a.CD, a.STR, a.INP_AT
FROM DT_LOG a
where a.INP_AT = (select max(c.INP_AT) from DT_LOG c where c.CD = a.cd and c.DT = '11/17/11')
and dt = '11/17/11'
order by cd
Result and executing time :
1) CentOS 6
Executing...
Done.
8468502 fetches, 2 marks, 4244984 reads, 2 writes.
0 inserts, 0 updates, 0 deletes, 4144063 index, 0 seq.
Delta memory: 219264 bytes.
Total execution time: 43.510s
Script execution finished.
2) Win 7
Executing...
Done.
8432907 fetches, 4 marks, 1294 reads, 4 writes.
0 inserts, 0 updates, 0 deletes, 4144031 index, 0 seq.
Delta memory: 104600 bytes.
Total execution time: 6.854s
Script execution finished.
I wonder, why CentOS reads so many records (4244984 reads) compare to Win 7 (1294 reads).
Maybe someone could give me an explanation?
Thanks in advance.
Best regards,
Sugiarto