- Feb 25, 2011
- 16,987
- 1,617
- 126
Putting in Programming because Opengrok is a code browser / indexing tool:
So, our QA department has an opengrok instance (in a vmware VM) with all of the branches of all of our codebases, that indexes every night. About 400GB total.*
*Only like two guys use it, but that's not my problem.
So, I noticed that when it's sitting on an iSCSI LUN, it takes about 13-14 hours to index. But if DRS has moved it to a host/LUN that are connected w/ Fiber Channel, it does it in under 10 hours. Average CPU load will be around 12% CPU use on an 8-core VM.
I'm not used to seeing that big a performance hit with iSCSI, although I know it's slower. But this made me think.
So I took one of our "20% time project" VM hosts, made sure it had enough on-board storage (not a SAN LUN, but 2x 15k drives in RAID-0 with a 200GB SATA SSD set up as a cache drive) to host a clone of our opengrok instance, and ran a reindex. Which completed in just under 3 hours. (!)
Still never went past 25% CPU use.
I am now migrating the Opengrok data to an mdadm-created RAID-10 of PCI-E SSDs. (Older 350GB Micron P320h's that we had in a closet. So, from around 2012.) This is basically as fast as I can go out of the old testing hardware I have access to, but it should still be pretty enjoyable to watch.
I think I should just quietly point the DNS entry for the opengrok server to the new VM and see if anybody says anything.
tl;dr - Wow. If you are a sysadmin w/ an opengrok instance, get some SSDs for that thing. Yikes.
So, our QA department has an opengrok instance (in a vmware VM) with all of the branches of all of our codebases, that indexes every night. About 400GB total.*
*Only like two guys use it, but that's not my problem.
So, I noticed that when it's sitting on an iSCSI LUN, it takes about 13-14 hours to index. But if DRS has moved it to a host/LUN that are connected w/ Fiber Channel, it does it in under 10 hours. Average CPU load will be around 12% CPU use on an 8-core VM.
I'm not used to seeing that big a performance hit with iSCSI, although I know it's slower. But this made me think.
So I took one of our "20% time project" VM hosts, made sure it had enough on-board storage (not a SAN LUN, but 2x 15k drives in RAID-0 with a 200GB SATA SSD set up as a cache drive) to host a clone of our opengrok instance, and ran a reindex. Which completed in just under 3 hours. (!)
Still never went past 25% CPU use.
I am now migrating the Opengrok data to an mdadm-created RAID-10 of PCI-E SSDs. (Older 350GB Micron P320h's that we had in a closet. So, from around 2012.) This is basically as fast as I can go out of the old testing hardware I have access to, but it should still be pretty enjoyable to watch.
I think I should just quietly point the DNS entry for the opengrok server to the new VM and see if anybody says anything.
tl;dr - Wow. If you are a sysadmin w/ an opengrok instance, get some SSDs for that thing. Yikes.