How do you use the "core-dir" option?

Moderators: Site Moderators, FAHC Science Team

Post Reply
morningfalcon
Posts: 3
Joined: Tue Jun 09, 2020 1:08 pm

How do you use the "core-dir" option?

Post by morningfalcon »

Hello! I have a small folding farm with between five and six hundred clients (my city library is donating resources while closed to the public). Because computers are wiped after each reboot I am unable to save anything to the computers themselves, so everything is stored on a file server.

When initially setting up I toyed with the idea of all instances using the same core directory, but I was never able to get it to work so I abandoned the idea. I recently ran a directory scan using WinDirStat and found that there are over 11GB of storage being used by core executables alone, so now I'm revisiting it.

Background complete, my question is this: does anyone know how to use the "core-dir" option in the config file? Specifically, I would like to use a Windows UNC path "\\server\share$\cores" so that all of my clients end up using the same executable, but for some reason I can't get it to use anything other than the "cores" subdirectory in the client working directory. From the command line help output on FAHClient it seems like it's exactly what I'm looking for, but it doesn't seem to do anything. So far I've tried using the full path and a relative path using double-dot directory traversal. As a test I even tried a path on the local PC (C:\cores), but that didn't work either. Here's a snippet of the config file for consideration:

Code: Select all

<config>
  <!-- Configuration -->
  <config-rotate v='false'/>

  <!-- Logging -->
  <log-date v='true'/>
  <log-to-screen v='false'/>

  <!-- Folding Slots -->
  <slot id='0' type='CPU'/>
  
  <core-dir v='\\server\share$\cores'/>
</config>
I couldn't find any relevant info on the core-dir option here or anywhere else. Any guidance would be appreciated.


Thank you,
~morningfalcon
Joe_H
Site Admin
Posts: 7941
Joined: Tue Apr 21, 2009 4:41 pm
Hardware configuration: Mac Pro 2.8 quad 12 GB smp4
MacBook Pro 2.9 i7 8 GB smp2
Location: W. MA

Re: How do you use the "core-dir" option?

Post by Joe_H »

I keep a copy of a log file from a time I intentionally ran with logging verbosity set to 5 to get a listing of all of the default values of the configuration XML. From that I see that the default is this:

Code: Select all

  <core-dir v='cores'/>
The normal location for the folding cores is a subdirectory 'cores' in the default CWD: which for standard Windows installations is defined to be %AppData%. So my take on the 'core-dir' option is that it is relative to that and any redirect would need to be also a relative path instead of an absolute path.

It may be possible to do what you are trying, but have not seen anything using 'core-dir'. Most of the XML options are undocumented, so outside of the main ones used to configure folding slots and a few related to logs, few get discussed here. Mostly they are there to allow changes to be made by the developer without modifying the client code itself.

I would expect that the 'core-dir' option would need to be made under the Expert tab as an Extra Client Option. That may be where you did add it, I can not tell from the posted config.xml.

Someone else may have ideas on how to accomplish not having many copies of the same executables.
Image

iMac 2.8 i7 12 GB smp8, Mac Pro 2.8 quad 12 GB smp6
MacBook Pro 2.9 i7 8 GB smp3
bruce
Posts: 20824
Joined: Thu Nov 29, 2007 10:13 pm
Location: So. Cal.

Re: How do you use the "core-dir" option?

Post by bruce »

One word of caution:

It sounds like you could save 11GB of disk by using a single copy of all cores from your server. I would NOT recommend that. The first time any one of your computers receives a WU that requires an updated copy of a FAHCore, it will attempt to download that FAHCore but it won't be able to because somewhere else in your library there will be some other computer is using the un-updated version and the file is in-use. Then you'll have to shut down ALL of the other computers so the one that's trying to update the shared copy can proceed without interference.

For a single computer with multiple GPUs all sharing the same copy of FAHCore_2* that's a minor problem. For an entire library, it becomes a major problem.
morningfalcon
Posts: 3
Joined: Tue Jun 09, 2020 1:08 pm

Re: How do you use the "core-dir" option?

Post by morningfalcon »

Thank you for the feedback. It certainly would be a hassle to stop and restart the entire system, not to mention I'm not entirely sure how I would know that it needed to be done. That said, I would still be curious to know how to change the location of the cores directory in the event I can find another suitable location to store each client's core collection.

I tried changing the cores directory to simply "testcores" and that didn't seem to make any difference. Exact process was:
  1. Update config.xml
  2. Stop FAHClient.exe
  3. Remove "cores" subdirectory
  4. Start FAHClient.exe
This resulted in the client recreating the "cores" subdirectory and downloading the core to that folder. I also turned logging verbosity up to 5 and noticed that the client seems to recognize the new configuration:

Code: Select all

2020-06-09:15:35:11:<config>
--- snip ---
2020-06-09:15:35:11:  <!-- Folding Core -->
2020-06-09:15:35:11:  <checkpoint v='15'/>
2020-06-09:15:35:11:  <core-dir v='testcores'/>
2020-06-09:15:35:11:  <core-priority v='idle'/>
2020-06-09:15:35:11:  <cpu-affinity v='false'/>
2020-06-09:15:35:11:  <cpu-usage v='100'/>
2020-06-09:15:35:11:  <gpu-usage v='100'/>
2020-06-09:15:35:11:  <no-assembly v='false'/>
--- snip ---
2020-06-09:15:35:11:</config>
But it's still loading from the old location...

Code: Select all

--- snip ---
2020-06-09:15:36:18:WU01:FS00:Running FahCore: "C:\Program Files (x86)\FAHClient/FAHCoreWrapper.exe" \\server\share$\client01\cores/cores.foldingathome.org/v7/win/64bit/avx/Core_a7.fah/FahCore_a7.exe -dir 01 -suffix 01 -version 705 -lifeline 1772 -checkpoint 15 -np 3
2020-06-09:15:36:18:WU01:FS00:Started FahCore on PID 9360
--- snip ---

~morningfalcon
PantherX
Site Moderator
Posts: 6986
Joined: Wed Dec 23, 2009 9:33 am
Hardware configuration: V7.6.21 -> Multi-purpose 24/7
Windows 10 64-bit
CPU:2/3/4/6 -> Intel i7-6700K
GPU:1 -> Nvidia GTX 1080 Ti
§
Retired:
2x Nvidia GTX 1070
Nvidia GTX 675M
Nvidia GTX 660 Ti
Nvidia GTX 650 SC
Nvidia GTX 260 896 MB SOC
Nvidia 9600GT 1 GB OC
Nvidia 9500M GS
Nvidia 8800GTS 320 MB

Intel Core i7-860
Intel Core i7-3840QM
Intel i3-3240
Intel Core 2 Duo E8200
Intel Core 2 Duo E6550
Intel Core 2 Duo T8300
Intel Pentium E5500
Intel Pentium E5400
Location: Land Of The Long White Cloud
Contact:

Re: How do you use the "core-dir" option?

Post by PantherX »

Welcome to the F@H Forum morningfalcon,

Here's what I would do:
1) Exit the client
2) Nuke the cores folder entirely
3) Modify the config.xml file
4) Start the client

Also, I noticed that the <core-dir v='cores'/> is not a valid option in V7.6.13 (check point 9 in this topic: viewtopic.php?f=24&t=26036) so not sure if it was previously working in a version of V7 and then later removed as it was no longer working.
ETA:
Now ↞ Very Soon ↔ Soon ↔ Soon-ish ↔ Not Soon ↠ End Of Time

Welcome To The F@H Support Forum Ӂ Troubleshooting Bad WUs Ӂ Troubleshooting Server Connectivity Issues
morningfalcon
Posts: 3
Joined: Tue Jun 09, 2020 1:08 pm

Re: How do you use the "core-dir" option?

Post by morningfalcon »

Thanks for the tips, still no joy though. I think I'll just leave it alone since it's dropped in newer versions. If it's being deprecated/removed then I'd rather not use it anyway.
Thank you all for the help. This is a great community you've cultivated and I look forward to working with you in the future.

Cheers,
~morningfalcon
bruce
Posts: 20824
Joined: Thu Nov 29, 2007 10:13 pm
Location: So. Cal.

Re: How do you use the "core-dir" option?

Post by bruce »

morningfalcon wrote:... I look forward to working with you in the future.
:lol: I hope not that doesn't mean you're looking forward to having another problem soon. :roll:
Post Reply