Message boards : Number crunching : High write-rate with Pythons
Previous · 1 · 2
Author | Message |
---|---|
Jim1348 Send message Joined: 19 Jan 06 Posts: 881 Credit: 52,257,545 RAC: 0 |
My computer is not quite 1 year old, the 500GB SSD has 131TB written. I don't know how much of that is R@H VBox jobs but I'm guessing a lot of it. My Python machine is shut down for an upgrade, but the last time I checked the writes from the operating system were at least 2 TB/day when running 8 to 10 pythons or so. When I included a write-cache (it was 16 GB with a 4 hour latency), the writes to the SSD itself dropped to a negligible amount of less than about 1 GB/day. So the problem is solved for me. Even a 4 GB write-cache with a one hour latency would protect the SSD I think. I managed to kill a 500 GB SSD inadvertently before I learned the correct way to do the write cache as I outlined here: https://boinc.bakerlab.org/rosetta/forum_thread.php?id=14871&postid=106343#106343 I was doing the pythons for less than a year; maybe six or eight months. I don't see the point of a second SSD. It would just be killed instead, unless that is OK for you. I can't see your computers. If you are on Windows, there is PrimoCache. https://www.romexsoftware.com/en-us/primo-cache/index.html It is probably no more than the cost of an SSD, and less bother to fix. |
Paddles Send message Joined: 15 Mar 15 Posts: 11 Credit: 5,359,182 RAC: 2,502 |
When I included a write-cache (it was 16 GB with a 4 hour latency), the writes to the SSD itself dropped to a negligible amount of less than about 1 GB/day. So the problem is solved for me. I am running a Windows machine - and given that BOINC data is on the main Windows system disk/volume (OS and applications; most of my non-BOINC data is on a separate SSD) I'd rather lose a sacrificial disk that's only used for BOINC than the disk that keeps everything going. Adding caching is an interesting idea, but not sure how well it would work on the main system disk. |
Jim1348 Send message Joined: 19 Jan 06 Posts: 881 Credit: 52,257,545 RAC: 0 |
Adding caching is an interesting idea, but not sure how well it would work on the main system disk. I have a dedicated Win10 machine (Ryzen 3600) where I run 8 pythons at a time, and use PrimoCache on it. It runs great; better than Linux, since you don't get the "Vm job unmanageable" ones on Windows, as least if you use VirtualBox 5.2.44 (not 6.x). However, the problem is that Windows reserves all the memory BOINC allocates for each work unit, even though the pythons do not use it all. And it allocates all the memory that you set for the cache in addition. Therefore, I have to use 128 GB of memory to run only 8 pythons. I could use half that memory (64 GB) in Ubuntu and it would work OK with even more pythons; at least 12 at a time is what I usually run on a Ryzen 3900X or 3950X. On the other hand, I am also running PrimoCache on my main working machine, a Ryzen 5700X running Windows 10. It is also working great, but I am not running the pythons on it, only other BOINC projects. It has 32 GB of memory, and I am allocating 8 GB (4 hours) for the cache. But just because it is a system disk won't be a problem when using PrimoCache; it is only a question of whether you have enough memory. If you run only 2 pythons, that would make the whole process easier, and reduce the write-rate to something more reasonable. I just like to devote an entire machine to them. |
[VENETO] boboviz Send message Joined: 1 Dec 05 Posts: 1994 Credit: 9,623,704 RAC: 9,591 |
I have a dedicated Win10 machine (Ryzen 3600) where I run 8 pythons at a time, and use PrimoCache on it. Thank you for tests and informations. But i prefer an officially maintained/optimized/debugged app than 3rd party sw And that's up to the developer team. |
Jim1348 Send message Joined: 19 Jan 06 Posts: 881 Credit: 52,257,545 RAC: 0 |
But i prefer an officially maintained/optimized/debugged app than 3rd party sw I think what we have is the best they can do. We have to fix up their goofs from there. But I quite agree that it is their job, should they wish to do it. |
Paddles Send message Joined: 15 Mar 15 Posts: 11 Credit: 5,359,182 RAC: 2,502 |
When I included a write-cache (it was 16 GB with a 4 hour latency), the writes to the SSD itself dropped to a negligible amount of less than about 1 GB/day. So the problem is solved for me. To follow up... I did eventually install another SSD to serve solely for BOINC (might end up doubling as scratch space for anything else that needs it), on the basis that I'd rather lose a secondary SSD than the one that holds Windows and all my software. I've also installed PrimoCache with caching just for that drive (16GB out of 32GB, which should be enough to handle my configured maximum of 4 VBOX jobs, and defer-write set to Infinite). So far the caching seems to be reducing the amount of data actually written to the SSD to about 40% of what it would otherwise be, and the amount of data written to my primary drive has reduced significantly. It looks like some BOINC jobs complete and and get cleaned up using data in cache, resulting in little or no data being written to disk. If/when the BOINC/scratch disk dies, I'll just replace it with another low-end SSD, but with PrimoCache as part of the mix this could be 2-3 years away - and who knows what R@H will be doing then? So thanks to jim and others for suggestions/guidance. |
Jim1348 Send message Joined: 19 Jan 06 Posts: 881 Credit: 52,257,545 RAC: 0 |
I think your scratch disk will last forever. The writes are serialized by PrimoCache, and much easier on the SSD than random writes. And 16 GB is a pretty good size. You are welcome. |
Message boards :
Number crunching :
High write-rate with Pythons
©2024 University of Washington
https://www.bakerlab.org