PDA

View Full Version : Questions on new computer purchase with SSD..



akvsaq
05-03-2013, 06:09 PM
I just purchased a new computer for one reason only. I want to be able to import 2 databases, each with 3 million hands and want to be able to run filter/reports quickly. I will not be playing any online poker so the database size will remain the same. I tried this on a surface pro and although it had an ssd, it was way too slow to do anything HM related and had to return it. I decided to get a desktop but want to make sure I will be able to get good speed. I still have time to make adjustments if necessary.

Here are the specs:

CPU: Intel(R) Core™ i7-3770K 3.50 GHz 8MB Intel Smart Cache LGA1155 (All Venom OC Certified)
HDD: 120 GB SAMSUNG 840 Series SATA-III 6.0Gb/s SSD - 530MB/s Read & 130MB/s Write (Single Drive)
HDD2: 1TB SATA-III 6.0Gb/s 32MB Cache 7200RPM HDD (Single Drive)
MEMORY: 16GB (4GBx4) DDR3/1600MHz Dual Channel Memory (G.SKILL Ripjaws X)
MOTHERBOARD:
[CrossFireX] GIGABYTE GA-Z77-HD3 Intel Z77 Chipset DDR3 ATX Mainboard w/ IRST, Ultra Durable 4 Classic, 7.1 HD Audio, GbLAN, 2x Gen3 PCIe x16, 2x PCIe x1 & 2 PCI (Extreme OC Certified)
VIDEO: NVIDIA GeForce GTX 650 Ti 1GB 16X PCIe Video Card
POWER: 750 Watts - Corsair CX750 80 Plus Bronze Power Supply


MY QUESTIONS:

1) I will be installing Windows 7 Ultimate, HM2, postgreSQL, and 2 databases w 3 mil hands each into the 120GB SSD. Everything else will go into my standard HD unless I have space remaining on the SSD. Will my SSD be big enough for all of this?

2) Will I need to vacuum/analyze/re-index my databases on my SSD drive after importing to get faster performance? If so, I read somewhere on the forum that I'll need a lot of extra space. Should I go with the 240GB option then? Again, I will not be playing online poker at all and will just be doing filter/report analysis on just these 2 databases.

3) Please offer me any suggestions to give me super fast speeds for filter/reporting my huge database. I understand RAID 0 array is risky so I passed on that option. How about an OCZ RevoDrive 3 PCIe card? I read it doubles the speed of an SSD. Will I see a significant difference if I used this instead? Should I get more RAM?

Patvs
05-03-2013, 11:36 PM
1. If you have a 120 GB SSD with 16 GB RAM: the drive will need:
35 GB for Windows, 16 GB for the hibernation file, 24 GB for the page file, 15 GB for 'other' basic programs = 90 GB.
120 - 90 = 30
30 / 4.3 to 10 = you can have a 3-6 million hand database.
(I'm dividing by a 4.3 to 10 range, because when you want to perform a vacuum/analyse or backup/restore a database it will require a LOT of disk space to perform such a task, nearly the size of the database).

Of course you can move the page file to the HDD2 1 TB (or make it smaller), or disable hibernation, etc. etc.
But a 160 GB SSD might be a better fit.

2. No, unlike with a regular HDD where you constantly need to defrag the drive, and vacuum/analyse/re-index the database...
on the SSD you only have to TRIM the drive. (but it can do this automatically when the drive is inactive)

If you have a 3 million hand database (=12 GB), if you import all these hands the first time.. or backup the database, or reindex the database, it will require about 10 GB of additional free diskspace. We have a bugticket on this where you can change the temp/work folder to the HDD2, but at the moment it will always eat up this diskspace on C:/. So go with 160 GB.

3. RAID0 is faster... but risky. (it's especially risky, if you also install Windows to this drive. If there is an issue with the RAID array, spending a full day reinstalling Windows, is not something to look forward to).
OCZ RevoDrive PCIe is a LOT faster.... but... also a lot more expensive. And it's also basically a RAID0 array.

There will be no performance improvement if you add more than 16 GB RAM. There even is a downside to more RAM, with for example 64 RAM, Windows would like to use 64 GB for the hibernation file and 96 GB for the page file.

akvsaq
05-03-2013, 11:55 PM
1. If you have a 120 GB SSD with 16 GB RAM: the drive will need:
35 GB for Windows, 16 GB for the hibernation file, 24 GB for the page file, 15 GB for 'other' basic programs = 90 GB.
120 - 90 = 30
30 / 4.3 to 10 = you can have a 3-6 million hand database.
(I'm dividing by a 4.3 to 10 range, because when you want to perform a vacuum/analyse or backup/restore a database it will require a LOT of disk space to perform such a task, nearly the size of the database).

Of course you can move the page file to the HDD2 1 TB (or make it smaller), or disable hibernation, etc. etc.
But a 160 GB SSD might be a better fit.

2. No, unlike with a regular HDD where you constantly need to defrag the drive, and vacuum/analyse/re-index the database...
on the SSD you only have to TRIM the drive. (but it can do this automatically when the drive is inactive)

If you have a 3 million hand database (=12 GB), if you import all these hands the first time.. or backup the database, or reindex the database, it will require about 10 GB of additional free diskspace. We have a bugticket on this where you can change the temp/work folder to the HDD2, but at the moment it will always eat up this diskspace on C:/. So go with 160 GB.

3. RAID0 is faster... but risky. (it's especially risky, if you also install Windows to this drive. If there is an issue with the RAID array, spending a full day reinstalling Windows, is not something to look forward to).
OCZ RevoDrive PCIe is a LOT faster.... but... also a lot more expensive. And it's also basically a RAID0 array.

There will be no performance improvement if you add more than 16 GB RAM. There even is a downside to more RAM, with for example 64 RAM, Windows would like to use 64 GB for the hibernation file and 96 GB for the page file.

1) I'm confused. Your answer to question 1 says I'll need extra space on my SSD to do analyze/re-index but your reply to question 2 says I don't need to do that on an SSD so which is it? If I import my 3 mil hands and do nothing will it affect my speed for filter/reports?

2) For what I'm going to be using HM for (filter/reports of 3 mil hands over and over and over) is it true that 4k iops for read is the single most important thing to look for in an SSD in terms of speed?

3) How much difference will I notice between say an SSD with 95,000 4k read iops vs 120,000 4k read iops?

Patvs
05-04-2013, 12:12 AM
1. You don't need to vacuum/analyse/reindex.
But you may want to backup/restore the database. Also when you import a lot of hands into a new database, it will create lots of temporary files on C:/ in a 'work' folder. Similarly HoldemManager has a log file (log.txt) in the C:\Users\{username}\AppData\Roaming\HoldemManager\ folder, and sometimes this log file will temporary bloat up to a very large size (for example 10 GB) when it's logging a mass import. So if you import 3 million hands (=12 GB) you need about a total of 24 GB of diskspace.


2. Yes, look for fast 4K IOPS read speeds.
3. 95k vs 120k IOPS 4K read speed will not be noticeable. It's noticeable when a fast 7200 RPM HDD (or even a superfast 15k RPM SAS drive) is completely annihilated by a very basic SSD.


http://www.8088.net/images/IOps/IOps_mean_comparison_EN.gif

The difference is much less noticeable when comparing an SSD with another SSD.
The exception would be a default SSD vs a OCZ RevoDrive PCIe card, where the RevoDrive is noticeably faster... but I don't think it's worth the price difference.

Patvs
05-04-2013, 12:36 AM
Also, though you don't need to vacuum/analyse/reindex to improve performance.... but may still want to do it to get back some diskspace.

For example with a 12 GB database (3M hands). You purge/delete 1M hands. You want to get back 4 GB of diskspace--->
Let's say you only get back 1 GB. To get back the other 3 GB you still need to vacuum/analyse/reindex on the database.

...but you need 8-12 GB of free diskspace to be able to perform the vacuum/analyse/reindex task.

akvsaq
05-06-2013, 04:52 PM
Thank you so much for your detailed input. I am about to reorder my computer and still have a couple of questions. I pretty much want the absolute fastest speed for just running filter/reports on my huge database.

1) I'll be getting a 250 GB Samsung 840 SSD for my OS and other programs. I'm also getting a 2nd drive. I was originally intending to get a 1 TB HDD but decided I didn't need that much space cuz I store all of my media on an external HDD anyway. SO, my question is what should I get for the fastest speed for running filter/reports:

a) 2 120 GB Samsung 840 SSD in RAID 0 array
b) a 2nd 250 GB Samsung 840 SSD non-RAID

[I ask cuz I heard RAID 0 doesn't improve 4k read iops speed and if it doesn't help me get faster speeds for running filter/reports in HM2, wouldn't want to risk corruption for no reason.]


2) Will putting my HM2, postgreSQL, etc.. on a 2nd SSD without the OS on it make it run faster?

3) Do I need a HDD on my system if I don't need the extra space?

4) I'm also deciding between the i7 3770k 3.5 Ghz and the i7 3770 3.4Ghz. Will this make any difference? How about if I overclock the 3770k?

Patvs
05-07-2013, 03:37 AM
1. Read: http://forums.holdemmanager.com/general-support/361571-best-ssd-config-using-hem2-nc-2.html
Summary: 1a(RAID0 is faster*, 1b is more reliable.
Reliability plays a factor when the RAID0 array breaks down, and you'll lose all data.
*Mostly the sequential read speeds will be faster, not the 4K read speeds, but it will still be faster nonetheless.

2. No (answer is "Yes" with regular HDDs, but it doesn't really matter for SSDs)

3. No, if you already store all media on an external drive, you don't really need an additional internal 1 TB-2TB drive.

4. 3.4 vs 3.5 Ghz difference will be minimal. I'm not sure to what extremes you can overclock both CPU's but if you're comfortable overclocking, overclock it to a point where the system is still stable.