Top 10: HEM performance increase tips
Page 1 of 64 1231151 ... LastLast
Results 1 to 10 of 635
  1. #1
    HM Support Patvs's Avatar
    Join Date
    Feb 2009
    Location
    Amsterdam, the Netherlands
    Posts
    33,523

    Default Top 10: HEM performance increase tips

    **If you are using HM2 please see this thread.**

    I just thought it would be helpful to post this list. The HEM FAQ has most of this information, but it's quite cluttered to find it in so many FAQs.

    Please post here, if you can think of other tips that will help increase the performance of HEM, HM Import, Table Scanner, HUD and postgreSQL. Specifically for those that have a HUGE database. Ask questions, and HEM users can discuss about their experiences using these tips here.


    Top 10 tips:

    Upgrade your HARDWARE*:
    1 to 3

    -1 Get a fast harddisk! (= more important than having a QuadCore over a DualCore processor!)
    ---x Preferably a fast SSD harddisk (fastest) for your database and Windows (Intel or OCZ Vertex 2/3)
    ---x A new 5400/7200 RPM IDE/SATA harddisk (slowest)
    The SSD not only wins on Sequential Read/Write speeds (of big files), they win the most with access time, 4K Read/Write speeds (small files) and just "overall" I/O operations per second.
    A Western Digital VelociRaptor used to be easily twice as fast as the best 7200 RPM harddisk. However it currently only is about 10% faster than the latest Seagate Barracudas, Hitachi Deskstars, Western Digital Caviar Blacks and Samsung Spinpoints F1/F3. The VelociRaptor does not justify its price difference anymore.

    Note: a brand new $60 high-end 2012 model 7200 RPM harddisk will be twice as fast as your 3-4+ yrs old 7200 RPM harddisk!...

    LAPTOP: ALL 5400 RPM laptop harddisks are slow (favoring being energy efficient over performance. Try to find one with a SSD.
    -make sure the Control Panel-->Power Options are set to HIGH PERFORMANCE on your computer
    -Expert Users only: overclock your CPU!

    An alternative to a SSD SATA harddisk: are the new PCI-Express cards like the OCZ RevoDrive. And if you have a USB 3.0 mainboard the SuperTalent RAIDDrive)

    -2 Get lots of RAM (at least 2+ GB RAM recommended if you have a 10+ GB database) (note: when using more than 3 GB RAM, use a 64-bit version of Windows)
    -3 PostgreSQL loves multiple CPUs, so the more CPUs the better. (Intel i5 / i7 or AMD Phenom) Also "Holdem Manager will be adding improvements that will take advantage of quad core/64 bit versions."

    -Change Processes Priority. Start the Windows Task Manager, processes tab--> and while running an auto import in HoldemManager---> rightclick on HoldemManager.exe, HMHud.exe, HMimport.exe---> set priority to HIGH (not real time!), set affinity to use all your CPUs. (click for more detailed info)

    Update your SOFTWARE:

    -4 Always use the latest version of Holdem Manager, and use the most current version of PostgreSQL. We support 8.4.x by default.

    Advanced Users: You are allowed to use 9.0/9.2 (64 bit). They will work just fine*, but they're not officially supported. *Some features (like using the internal backup/restore tool may not work. You can manually use pgadminIII instead: http://faq.holdemmanager.com/questio...estoreDatabase (this is for HM1!)

    How to install HEM + PostgreSQL 8.4.
    Update your Windows (use Microsoft Update, and make sure you have the latest Service Pack (SP2 for Vista, SP3 for XP)) and update all system drivers (including your mainboard and videocard driver! and .net framework updates).


    -5 Remove the WinnerName, WinnerCards and WinnerWon from the Hands View Column Selector

    -6 Defrag your non-SSD harddisk, using Defraggler by Piriform. Or you can use Disk Defrag by Auslogics or Power Defragmenter (all FREE software and better than the Windows included Defrag)
    It is recommended to stop postgreSQL from running before you use defrag! (To stop and start the service: Start > All Programs > PostgreSQL > Stop Service / Start Service)

    PostgreSQL:

    -7 Edit your PostgreSQL.conf file in the SQL 8.x/data folder. (you need to reboot after you've made the changes)
    Do not use the Tuning Wizard. On some systems it will make changes to the postgresql.conf it shouldn't, resulting in being unable to connect to the database!
    If you experience this problem--> simply go to the 8.4/data folder, undo the changes you made and reboot.
    Recommended changes:
    shared_buffers = <number> MB (set it to 20% of your system's memory, but not higher than 512 MB)
    effective_cache_size = <number> MB (set this to 4x the size of the shared_buffers)

    Change at your own risk: (change them back to default if postgresql stops running, or your performance decreases)
    wal_buffers = 8MB
    temp_buffers = 24MB #(wal_buffers x3)
    work_mem = 128MB
    maintenance_work_mem = 512MB
    commit_delay = 10000
    checkpoint_segments = 128
    checkpoint_completion_target = 0.9


    Remove the # at the beginning of the line after making the changes you want otherwise PostgreSQL will still ignore them (lines with a # at the front are not interpreted).


    Decrease the SIZE of your database:

    -8 How to optimize the database size in 3 steps: -1/2 Vacuum + Analyse, -3 Reindex
    --8.1/8.2 VACUUM + Analyse: VACUUM Analyse your database regularly (How to do a manual VACUUM)
    --8.3 REINDEX (see 8.1 for instructions, but choose Reindex instead of Vacuum in pgAdmin)

    -9 Purge hand histories (It will free up disk space without losing stats, but you lose the option to see the HH or view the hand in the replayer). This is only for HM1! In HM2 a purge deletes the stats too.

    -10 How to make PostgreSQL stop making those big log files (I had 8 GB of logfiles before I realized you're allowed to delete the content of the data/pg_log directory!)

    -11
    --11.1 A near-empty harddisk is faster than a near-full harddisk, so delete your crap! CrapCleaner by Piriform and Windows Disk Cleanup can help.
    --11.2 Turn off indexing and turn off "compress this drive to save disk space" in your harddisk properties.
    --11.3 Optimize Windows for "best performance" (in Control Panel/System/Advanced/Performance/Setting/Visual Effects).
    --11.4 Advanced users only: save space by turning off System Restore (System/System Protection). *not recommended*

    -12 Windows 7 + SSD
    Windows 7 users, General Windows 7 Performance Tweaks guide*
    (If you already have a SSD harddisk also do all the SSD Tweaks in that guide.. though don't disable hibernation!, don't completely disable your page file!, and don't disable AERO!)
    *Services to disable in that guide: also don't disable Secondary Logon, Hibernation, and SuperFetch.

    Anyone can think of #13 and other tips?</number></number>
    Last edited by Patvs; 03-04-2011 at 07:34 PM. Reason: update

  2. #2
    Tech Support Manager morny's Avatar
    Join Date
    Jul 2008
    Location
    Ireland
    Posts
    20,888

    Default

    Thanks for this, were updating the FAQs at the moment so ill give this a few days and see if theres any more suggestions and ill forward it to the guy we have updating the FAQ, if it drops down over the next week feel free to bump it to remind me to add it
    --------------------------------------------------------------------------------------------------------------------
    We welcome any feedback on any solutions we provide, this helps us to provide better quality solutions in the future.

  3. #3
    Senior Member
    Join Date
    Dec 2008
    Location
    Florida
    Posts
    214

    Default

    Good list. All important things. On number 6 I recommend using Defragler I have had good luck with it overall and does a nice job with postgre. Only thing I would add is that it seems to work better if you stop Postgre from running before you defrag. If your not sure how here is a few pics.

    Open your control panel, then click on "Administrative tools"




    After opening tools then click on " Services" and the service window will open with all of the running services. Scroll down until you see PostgreSQL and click on it.



    Now just click on the " Stop the service" and you will see it change to "Stopped" in the Status list.

    Then perform your defrag. After it's done just come back and click on "Restart the service". Done

  4. #4
    Tech Support Manager morny's Avatar
    Join Date
    Jul 2008
    Location
    Ireland
    Posts
    20,888

    Default

    A quicker way to stop and start the service is Start > All Programs > PostgreSQL > Stop Service, either works though
    --------------------------------------------------------------------------------------------------------------------
    We welcome any feedback on any solutions we provide, this helps us to provide better quality solutions in the future.

  5. #5
    Senior Member
    Join Date
    Jan 2009
    Posts
    103

    Default

    Quote Originally Posted by Patvs View Post

    How to optimize PostgreSQL database size (I haven't tried the reindexing and dump/restore. Can anyone confirm it's save to do that to your HEM database?)



    Anyone can think of #11 and other tips?

    I habitually do the dump/restore. It cuts the db size by at least 70% on average and greatly improves performance. Sometimes it just doesn't work though. You can do everything perfect, and it just doesn't work. This is one of the reasons i'm really starting to hate postgre. Stuff always decides just not to work. It's like a built in AI that know how to mess with you....

  6. #6
    HM Support Patvs's Avatar
    Join Date
    Feb 2009
    Location
    Amsterdam, the Netherlands
    Posts
    33,523

    Default

    I tried reindex (for my whole database). The size decreased from 16.4 GB to 15.8 GB (only 4%, but still a useful 600 MB more free space and smaller database)

    The two greatest posts on the forum I found this week, were -1 the post by mksmipalla (Want to stop Postgre from creating those large log files, here's how). Morny added a link to that post in the FAQ. I noticed every FAQ entry has tags. For example, this FAQ entry has: "pg_log postgreSQL large log files save space reduce logs postgresql"

    However when I click on "PostgreSQL" to see ALL the FAQ entries with that tag, it shows me:

    15 FAQs Found
    Page 1 of 2

    It shows 10 FAQ entries on page 1. And I'm unable to view page 2! (where I'm guessing this new entry is)
    I tried different browsers. The Go to Page 2 button is javascript, but it doesn't seem to work. (does it work for you?) Since I've been using the tags mostly to browse through the FAQ it seems this is the main problem why there are some posts I know that exist, I just cannot find.

    (-second great post I found was how to change the colors of all the lines in the graphs, including the EV line, hopefully that will be back in the FAQ soon)

    ----

    Also I was hoping a similar post like this one (Top 10: HEM performance increase tips) could be made about Backuping-Restoring a Database / Migrating a Database to a New Computer-Harddisk / Backuping your HEM settings (ALL of those combined in one simple overview, using a similar layout as this topic) since those are currently spread all over the FAQ in seperate topics and I would need all the info if I wanted to re-install HEM on a new computer.

    And the FORUM could benefit from a general Anthology Thread topic listing the most usefull forum posts by category.


    I'll update the main post as much as possible with all of your input.
    Last edited by Patvs; 05-25-2009 at 02:11 AM.

  7. #7
    Senior Member stretch00's Avatar
    Join Date
    Sep 2008
    Location
    LAG'tard HELL
    Posts
    556

    Question Re-Indexing

    My question really is more of a concern and to possibly put a little more info out for the people like me that really know nothing about how computers,or databases work.
    After reading this great thread,I thought maybe I would try the suggestions. Having a few concerns about my HM Data;
    Do any of these steps affect the actual HHs?
    Will any of the players info in HM be altered?
    Will it change any folder views or how say; How an Archive folder is viewed? ex; MM/DD/YY
    And these would be just a few concerns for someone like me who understands a little. While I like the idea of this thread, maybe if an "Anthology/Wisdom" does get made and supported, I think it has to be made very clear what these changes/tweaks will accomplish, and more importantly what they will change if anything or nothing at all.Some of these tweaks are not for novice and even for the intermediate PC user could be quite intimidating.

  8. #8
    HM Support Patvs's Avatar
    Join Date
    Feb 2009
    Location
    Amsterdam, the Netherlands
    Posts
    33,523

    Default

    I believe, all of the steps above (and the 10 steps in the HEM FAQ) don't affect the HH, player info, folder views, etc. EXCEPT: #9 Purge hand histories (which will keep the player stats, but delete the handhistory)

    Which of these tweaks do you find intimidating? I find 7.1 (and 7.2) and 8.3 really intimidating. In fact I'm reluctant to even try them. :-)
    (I'll try 7.2 as soon as I have a new computer with 6 GB RAM, I only have 1 GB now, so it seems pointless to try 7.2 now)
    But most others (like Defrag, or making sure you have the most current version of all your software/drivers) are things you should be doing anyway, just for regular Windows maintenance.
    And the rest is there to make your database SMALLER.
    Last edited by Patvs; 05-27-2009 at 08:09 PM.

  9. #9
    Senior Member stretch00's Avatar
    Join Date
    Sep 2008
    Location
    LAG'tard HELL
    Posts
    556

    Default

    The ones that did intimidate me were the 7.1/7.2 and 8.0,8.3. The latter being the most.The blog that 8.0/8.3 connect to is so dated I would never do it to my database running SQL8.3. I noticed that all of the responses received to that blog date back to 2007 even the the original blog date.

    So since most users of HM are currently running at minimum SQL8.0, how relevant can any of those tweaks really be? Have you done them, and did they really increase the performance or compact the database size? What version SQL are you using?
    I definitely agree with 10 and did that one myself as soon as MK posted it and have never had an issue.

    It's just really the SQL stuff that's intimidating,all the normal PC maintenance I have no problem with.One question for you though is I see you use Defragler from Piriform, DO you defrag your SQL database with it?

    I'm just above a novice pc user so delving into certain stuff like SQL that runs such an important program to me like HM,always scares me a little.I like this thread though and hope we can keep it going and get more input from other users with more knowledge and good info. I'm going to do some research on SQL, I never did it I only installed it,I need to find out more.
    Last edited by stretch00; 05-28-2009 at 02:37 PM.

  10. #10
    Junior Member
    Join Date
    Apr 2009
    Posts
    6

    Default

    Okay, question. In the dump/restore instructions, how do you login as pmx and do all that command jargon? Anyone?
    Last edited by mug3n; 06-07-2009 at 11:10 PM.

Similar Threads

  1. Tips for Importing Large Databases?
    By cyberrico in forum Manager General
    Replies: 70
    Last Post: 12-04-2010, 02:32 PM
  2. Does purging hand increase the performance of the HUD?
    By madskills in forum Manager General
    Replies: 3
    Last Post: 06-02-2009, 01:09 PM
  3. Will Dual/Quad Core increase the speed/performance of HEM+Postgre?
    By lovetoplaypoker in forum Manager General
    Replies: 3
    Last Post: 05-08-2009, 07:08 PM
  4. Cluster postgres database to increase performance?
    By e306 in forum Manager General
    Replies: 5
    Last Post: 10-30-2008, 01:04 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •