![]() | |
![]() |
| | Thread Tools | Search this Thread | Display Modes |
#1
| |||
| |||
|
|
You are mostly running into defect/feature idsdb00100415 which is available 10.00.xC6 onwards. IDS 10 has many such performance improvements so may be time to upgrade ... Thanks and Regards, Gaurav |
#2
| ||||
| ||||
|
|
Free=13177086K Used=10205524K Full=43.65% Is this 10 plus hour time the best we can do or can we speed this up somehow? If we can speed this up please guide me as I am not a DBA and we do not have a DBA on staff. |
|
I have been told that we have 4 GB of memory on this box. BUFFERS 75000 # Maximum number of shared buffers |
|
PHYSFILE 40000 # Physical log file size (Kbytes) NUMAIOVPS 36 # Number of IO vps changed CSA 05/3/06 Are you using kernel io??? |
|
PHYSBUFF 64 # Physical log buffer size (Kbytes) bigger. LOGBUFF 64 # Logical log buffer size (Kbytes) bigger. |
#3
| |||||||
| |||||||
|
|
You should be able to speed this up. I have been told that we have 4 GB of memory on this box. BUFFERS 75000 # Maximum number of shared buffers 4 GB available and only 75000*4k=300MB of buffer cache.. i would make this bigger and therefor increase PHYSFILE 40000 # Physical log file size (Kbytes) NUMAIOVPS 36 # Number of IO vps changed CSA 05/3/06 |
|
Are you using kernel io??? onstat -g ioa will tell. Yes it appears that we are using kernel io if I am reading the onstat - |
|
if so decrease NUMAIOVPS if using cooked files then consider raw please |
|
PHYSBUFF 64 # Physical log buffer size (Kbytes) bigger. LOGBUFF 64 # Logical log buffer size (Kbytes) bigger. |
|
During the load it may be interesting to see what the db is doing, so an onstat -p may help... |
|
also you state dbimport/???? if load/unload, make sure that indexes are created after data is loaded. |
|
Also you could consider generating your own checkpoints setting lrumax and min dirty to 99, check buffer cache if 75 % dirty then do a onmode -c (i have cut load times have in half using this......) |
#4
| |||||||
| |||||||
|
|
You should be able to speed this up. I have been told that we have 4 GB of memory on this box. BUFFERS 75000 # Maximum number of shared buffers 4 GB available and only 75000*4k=300MB of buffer cache.. i would make this bigger and therefor increase PHYSFILE 40000 # Physical log file size (Kbytes) NUMAIOVPS 36 # Number of IO vps changed CSA 05/3/06 |
|
Are you using kernel io??? onstat -g ioa will tell. Yes it appears that we are using kernel io if I am reading the onstat - |
|
if so decrease NUMAIOVPS if using cooked files then consider raw please |
|
PHYSBUFF 64 # Physical log buffer size (Kbytes) bigger. LOGBUFF 64 # Logical log buffer size (Kbytes) bigger. |
|
During the load it may be interesting to see what the db is doing, so an onstat -p may help... |
|
also you state dbimport/???? if load/unload, make sure that indexes are created after data is loaded. |
|
Also you could consider generating your own checkpoints setting lrumax and min dirty to 99, check buffer cache if 75 % dirty then do a onmode -c (i have cut load times have in half using this......) |
#5
| |||
| |||
|
|
If you are using HPL, that grabs it's own memory. Data does not go through the normal buffer pool (unless you are using deluxe mode). You might not want to increase buffers. |
#6
| ||||
| ||||
|
|
I would love to cut my load times in half, but the load needs to run unattended so it looks like this option is out unless I'm missing |
|
PHYSFILE 40000 # Physical log file size (Kbytes) i do not want a checkpoint when this becomes 75 % full so |
|
contain a "TEXT" column and thus would not work with HPL (or at least we couldn't get it to work). it does work in deluxe as someone else stated, and yes you can |
|
On Jun 11, 3:07 am, Superboer <superbo... (AT) t-online (DOT) de> wrote: Hi Superboer, Thanks for the reply. You should be able to speed this up. I have been told that we have 4 GB of memory on this box. BUFFERS 75000 # Maximum number of shared buffers 4 GB available and only 75000*4k=300MB of buffer cache.. i would make this bigger and therefor increase PHYSFILE 40000 # Physical log file size (Kbytes) NUMAIOVPS 36 # Number of IO vps changed CSA 05/3/06 Any suggestions on what the increase the the BUFFERS to. And I guess there is some ratio that the BUFFERS to PHYSFILE should be set to. If this is correct would you mind tell me what that ratio is? Are you using kernel io??? onstat -g ioa will tell. Yes it appears that we are using kernel io if I am reading the onstat - g ioa otput correctly. The kio lines have the majority the reads and writes. if so decrease NUMAIOVPS if using cooked files then consider raw please Any suggestions on that the decrease the NUMAIOVPS to? Or is this just a trail and error type of tuning? PHYSBUFF 64 # Physical log buffer size (Kbytes) bigger. LOGBUFF 64 # Logical log buffer size (Kbytes) bigger. I'm sorry, but once again, any suggestions on what to increase these buffers to? During the load it may be interesting to see what the db is doing, so an onstat -p may help... Here is the onstat -p output while the load is running. This was taken while the HPL portion was running. Informix Dynamic Server Version 7.31.UD7 -- On-Line (CKPT REQ) -- Up 01:47:2 6 -- 873952 Kbytes Blocked:CKPT Profile dskreads pagreads bufreads %cached dskwrits pagwrits bufwrits %cached 1389715 7807595 27016290 94.86 1038143 2602162 2919803 64.44 isamtot open start read write rewrite delete commit rollbk 53729641 130660 148793 12402936 35365788 3679 13512 5474 139 gp_read gp_write gp_rewrt gp_del gp_alloc gp_free gp_curs 0 0 0 0 0 0 0 ovlock ovuserthread ovbuff usercpu syscpu numckpts flushes 0 0 0 3789.28 409.72 356 725 bufwaits lokwaits lockreqs deadlks dltouts ckpwaits compress seqscans 709578 0 15464370 0 0 580 1856 11850 ixda-RA idx-RA da-RA RA-pgsused lchwaits 79 1 255074 255136 57787 also you state dbimport/???? if load/unload, make sure that indexes are created after data is loaded. I'll check on this, but I believe these are rather small tables. The contain a "TEXT" column and thus would not work with HPL (or at least we couldn't get it to work). Also you could consider generating your own checkpoints setting lrumax and min dirty to 99, check buffer cache if 75 % dirty then do a onmode -c (i have cut load times have in half using this......) I would love to cut my load times in half, but the load needs to run unattended so it looks like this option is out unless I'm missing the boat completely with your comment here. John |
#7
| |||
| |||
|
|
If you are using HPL, that grabs it's own memory. Data does not go through the normal buffer pool (unless you are using deluxe mode). You might not want to increase buffers. |
#8
| |||
| |||
|
|
On Jun 11, 3:07 am, Superboer <superbo... (AT) t-online (DOT) de> wrote: Hi Superboer, Thanks for the reply. You should be able to speed this up. I have been told that we have 4 GB of memory on this box. BUFFERS 75000 # Maximum number of shared buffers 4 GB available and only 75000*4k=300MB of buffer cache.. i would make this bigger and therefor increase PHYSFILE 40000 # Physical log file size (Kbytes) NUMAIOVPS 36 # Number of IO vps changed CSA 05/3/06 Any suggestions on what the increase the the BUFFERS to. And I guess there is some ratio that the BUFFERS to PHYSFILE should be set to. If this is correct would you mind tell me what that ratio is? Are you using kernel io??? onstat -g ioa will tell. Yes it appears that we are using kernel io if I am reading the onstat - g ioa otput correctly. The kio lines have the majority the reads and writes. if so decrease NUMAIOVPS if using cooked files then consider raw please Any suggestions on that the decrease the NUMAIOVPS to? Or is this just a trail and error type of tuning? PHYSBUFF 64 # Physical log buffer size (Kbytes) bigger. LOGBUFF 64 # Logical log buffer size (Kbytes) bigger. I'm sorry, but once again, any suggestions on what to increase these buffers to? During the load it may be interesting to see what the db is doing, so an onstat -p may help... Here is the onstat -p output while the load is running. This was taken while the HPL portion was running. Informix Dynamic Server Version 7.31.UD7 -- On-Line (CKPT REQ) -- Up 01:47:2 6 -- 873952 Kbytes Blocked:CKPT Profile dskreads pagreads bufreads %cached dskwrits pagwrits bufwrits %cached 1389715 7807595 27016290 94.86 1038143 2602162 2919803 64.44 isamtot open start read write rewrite delete commit rollbk 53729641 130660 148793 12402936 35365788 3679 13512 5474 139 gp_read gp_write gp_rewrt gp_del gp_alloc gp_free gp_curs 0 0 0 0 0 0 0 ovlock ovuserthread ovbuff usercpu syscpu numckpts flushes 0 0 0 3789.28 409.72 356 725 bufwaits lokwaits lockreqs deadlks dltouts ckpwaits compress seqscans 709578 0 15464370 0 0 580 1856 11850 ixda-RA idx-RA da-RA RA-pgsused lchwaits 79 1 255074 255136 57787 also you state dbimport/???? if load/unload, make sure that indexes are created after data is loaded. I'll check on this, but I believe these are rather small tables. The contain a "TEXT" column and thus would not work with HPL (or at least we couldn't get it to work). Also you could consider generating your own checkpoints setting lrumax and min dirty to 99, check buffer cache if 75 % dirty then do a onmode -c (i have cut load times have in half using this......) I would love to cut my load times in half, but the load needs to run unattended so it looks like this option is out unless I'm missing the boat completely with your comment here. |
#9
| |||
| |||
|
|
Looking at your onstat -p output, I've calculated your critical metrics and: BR = 6.61 BTR = 81.73 RAU = 99.990 A Buffwaits Ratio (BR) over 7 means a slow server over 10 is server performance death, at 6.61 yours is certainly not optimal. I would increase LRUS and CLEANERS (always keep CLEANER >= LRUS) to lower your BR. A Buffer Turnover Rate of 81.73 means that you are turning over the entire buffer cache almost 82 times an hour or about every 44 seconds. Ideally BTR should be single digits to get down that low you'll have to increase the number of buffers by several times, I'd guess that ~400000-500000 would get you below 9. The Readahead Utilization (RAU) is fine and should be as close as possible to 100.00%, 99.990 is about as good as it gets in practice. Art S. Kagel |
#10
| |||
| |||
|
|
On Jun 19, 8:58 am, "Art S. Kagel" <art.ka... (AT) gmail (DOT) com> wrote: Hi Art, Thanks for your help with this. I changed my BUFFERS to 400000 and increased LRUS and CLEANERS to 99 each. Unfortunately this did not help speed things up. Tonight I am going to tweak some of the settings that Superboer suggested. Namely, lowering NUMAIOVPS from 36 to 4 and increasing the PHYSBUFF and LOGBUFF from 64 to 512 for each. Looking at your onstat -p output, I've calculated your critical metrics and: BR = 6.61 BTR = 81.73 RAU = 99.990 A Buffwaits Ratio (BR) over 7 means a slow server over 10 is server performance death, at 6.61 yours is certainly not optimal. I would increase LRUS and CLEANERS (always keep CLEANER >= LRUS) to lower your BR. A Buffer Turnover Rate of 81.73 means that you are turning over the entire buffer cache almost 82 times an hour or about every 44 seconds. Ideally BTR should be single digits to get down that low you'll have to increase the number of buffers by several times, I'd guess that ~400000-500000 would get you below 9. The Readahead Utilization (RAU) is fine and should be as close as possible to 100.00%, 99.990 is about as good as it gets in practice. Art S. Kagel |
![]() |
| Thread Tools | Search this Thread |
| Display Modes | |
| |