Code Monkey home page Code Monkey logo

fah-control's People

Contributors

abitrolly avatar borda avatar informatorius avatar jcoffland avatar kbernhagen avatar peterdavehello avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fah-control's Issues

Increase compression WUs and completed WUs before transmitting over internet

With faster hardware, it's perhaps a good idea to have the client handle higher compression data.
Current RTX WUs are ~25-70MB, and each card processes about 5-10 per day.
That's ~200-400MB per card.

Daily traffic is quite high, since I run multiple cards (9 currently, and I'm hovering around a few gigabytes of WUs per day, just for FAH).

Since large WUs affects mostly GPU servers, and they often run GPUs only, the CPU resources could be used to compress the data.

At <70MB per WU, it should take under 30 seconds to compress a WU, so it shouldn't affect performance that much; but it should lower bandwidth for larger servers.

Thanks

Temporarily provide a "Coronavirus" option in the disease preferences

A lot of people, myself included, have recently downloaded (or re-downloaded) FoldingAtHome, due to the amassed attention that it has received in the middle of the COVID-19 global pandemic, which is currently ongoing as of the time of this writing.

It would be great if people could focus on the particular goal that was the primary motivator that got them interested in the project in the first place, with the addition of an additional option that would allow this.

I have also opened a similar issue for the web GUI here: FoldingAtHome/fah-web-client#13

FAHControl on Ubuntu

I tried installing the debian package from the folding at home site first. I'm running Ubuntu 17.10. Unfortunately it complains about missing the python-support package, which hasn't been a part of Ubuntu for at least 2 1/2 years and will never come back. Searching, I found several other people who ran into this issue when 16.04 first came out. I haven't found any workarounds for the 2017 versions of Ubuntu.

So next I thought I'd try running it from this repo. I installed the required python packages listed in the Read.me, and after cloning, tried this:

$  python ./FAHControl
Traceback (most recent call last):
  File "./FAHControl", line 25, in <module>
    from fah import FAHControl, load_fahcontrol_db
  File "/home/rotten/src/fah-control/fah/__init__.py", line 24, in <module>
    from Version import *
ImportError: No module named Version

The above error is when I use Python 2.

If I try it with python3 I get a different error that highlights this is definitely old python version 2 code and that python3 is not what I'm supposed to be using.

$  python3 ./FAHControl
  File "./FAHControl", line 57
    if sock.recv(1024).strip() == 'OK': print 'Ok'
                                                 ^
SyntaxError: invalid syntax

So the next thing to try was to build it:

$  python ./setup.py build
dir = .
running build
running build_py
copying fah/FAHControl_glade.py -> build/lib.linux-x86_64-2.7/fah
running egg_info
writing requirements to FAHControl.egg-info/requires.txt
writing FAHControl.egg-info/PKG-INFO
writing top-level names to FAHControl.egg-info/top_level.txt
writing dependency_links to FAHControl.egg-info/dependency_links.txt
reading manifest file 'FAHControl.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'FAHControl.egg-info/SOURCES.txt'
running build_scripts

That looked like it worked ok. However, I get the same "Version" error when I cd into build/scripts-2.7 and try to run the FAHControl that the build script dropped in there.

There is no Version.py.
I noticed that setup.py references it too, but only if version.txt is missing... (which it is). So I'm somewhat surprised the build script didn't complain.

I'd like to run FAHControl on my Ubuntu systems. I have two of them with very new, very nice GPU boards and a bunch of the latest cores and ram. I'd rather do FAH than bitcoin mining or SETI processing, but getting this piece to work is not so obvious. The client appears to be running ok.

Any suggestions?

wont install on ubu16 and maybe deb8(partial fix)

I had to make some minor changes to the python files for this to egg-ify(build) and install correctly.
pyhon-gtk2 and python-gtk2-dev at minimal need to be installed.

the egg by default begs for gtk2 but the egg is nowhere to be found. remove the depends from the built egg.(its an archive).
rebuild the egg with setup.py and easy_install the egg from the dist folder manually.
(rename: github doesnt support .egg extension)

now we hit python 2.6-2.7 changes (keep up ladies) with the about dialog(I removed the "Version" python file requirement, but it sort of disables that code).

I get the resulting egg, which needs to be repacked once someone catches up the "Version" change. Me? I dunno. I need to go book diving it seems. You? feel free to finish my hack.

Dont forget to init the client before launching the control panel.

FAHControl-0.0.0-py2.7.zip

PPD

Is it possible to get the PPD from the cli?

Finish >| button does not work - also needs confirmation

Reported by @7im- on 4 Aug 2010 16:07 UTC
I tried to use the finish button to shut down the client after the current WU (because I can't save the max-units = 1 in the expert section yet). The button seems to do nothing.

I also suggest adding a confirmation messagebox to confirm the user wants to shut down that specific fah client (slot). We don't want people shutting down their clients or wrong clients by mistake.

Thanks.

Coordinated Development Approach

Hey - I couldn't find a great way to chat with anyone using github, so I decided to open this as an issue. My company is very closely connected with Stanford and is making large pushes with Folding@Home in general. Who can we reach out to create a coordinated approach to helping with the greater F@H project?

Please close this issue and feel free to reach out to me personally @bzaks1424 (twitter)

Monitoring API change or issue ?

Hello,

I'm testing the fahclient 7.6.0.
Some issues on monitoring side, I have developped a web layer based on HFM.net exports.
Some data are not reported. Does something has been removed on API ?

My web app : http://fahmon.fleucorp.net/

Missing data (for the moment what we saw) :

  • Client Version
  • Username
  • Team ID
  • Slot Type (GPU are reported as CPU)

Harlam has been contacted too. harlam357/hfm-net#304

Introduce progress bar for other statuses

The download and upload status states should likewise contribute to the progress bar. There's a bit of confusion to see progress 100% while there's an active operation taking place that can take tens of seconds or more to complete.

Basically the same information we find in the log would be great to have represented in the progress bar in the client.

04:23:15:WU02:FS01:Upload 50.40%
04:23:21:WU02:FS01:Upload 52.30%
04:23:27:WU02:FS01:Upload 54.74%
04:23:33:WU02:FS01:Upload 57.17%
04:23:39:WU02:FS01:Upload 59.07%
04:23:45:WU02:FS01:Upload 61.51%
04:23:51:WU02:FS01:Upload 63.68%

Right now the progress bar seems to be owned by the Running status state, let's generalize it for the other operations which though relatively shorter than Running are not instant operations.

Another UI idea is to have the first progress bar used for the download operation, then that progress bar gets reused for running. Then a second progress bar beneath the completed running progress bar, with a different color perhaps, would become visible and be used for the upload operation.

CPU slot gets added back in without me telling it to do so

macOS 10.15.4
FAH 7.5.1

I've installed it on the Mac just for the control app. I am folding on other systems. I just launch FAHControl here to keep an eye on the actual folding systems.

So I removed all slots from this system - actually, it only had a CPU slot, which I removed.

Then I used the app to control the other folding machines.

Today, I left the Mac sitting idle for a while, when I heard the fans speeding up. Sure enough, it was folding. I checked the config, and the CPU slot was somehow added back in. I didn't tell it to do that.

Why is the slot added automatically? I want to keep this machine at zero slots.

Hint on restart after changing network seetings

When I change the remote access settings in FAHControl for a client (allowed/denied IP range, password) a restart of the client seems to be necessary for the changes to take effect.
In the corresponding dialog in FAHControl there is no hint on this need. One could assume that after clicking "Save" the changed settings were already applied. It would be great to have a corresponding hint after changing the values in this dialog or an automatic restart of the client.

I use FAHControl 7.5.1 with Ubuntu Linux

GUI is confused about Pause/Unpause/Finish

Reported by @bb30994 on 4 Aug 2010 19:25 UTC
If I set "Finish" on one slot, it works correctly.

If I set "Pause" and then "Unpause" and then "Finish" it reports that it's Paused, not finishing.

(There's no indication in the log, so I don't know what will actually happen when the WU finishes.)

no GPU detected

I am wondering how can I add also GPU, I have tried the default (recommended) setting but got

ERROR: On client "local" 127.0.0.1:36330: No available GPUs

and this my sys:

$ nvidia-smi
Thu Mar 12 21:46:14 2020       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 435.21       Driver Version: 435.21       CUDA Version: 10.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 1050    Off  | 00000000:01:00.0 Off |                  N/A |
| N/A   71C    P0    N/A /  N/A |    489MiB /  4042MiB |      2%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0      1352      G   /usr/lib/xorg/Xorg                           239MiB |
|    0      3465      G   ...uest-channel-token=16720316923903381419    29MiB |
|    0      3987      G   ...AAAAAAAAAAAAAAgAAAAAAAAA --shared-files   178MiB |
+-----------------------------------------------------------------------------+

Control of web-server access

When trying to allow http server access from remote machines, FAHControl writes the following to config.xml:

<!-- HTTP Server -->
<allow v='0.0.0.0/0'/>
<deny v=''/>

This doesn't allow remote access to the http server. Searching the strings of FAHClient, I found 'web-allow'. Changing to the following got web access working for me:

<!-- HTTP Server -->
<allow v='0.0.0.0/0'/>
<web-allow v='0.0.0.0/0'/>
<deny v=''/>

There is probably a deny equivalent and this let me in with no password. Should FAHControl be updated to use 'web-allow' instead of/along with 'allow'?

Feature Request - Make the WS IP address clickable, show server status at stanford

Reported by @7im- on 6 Aug 2010 21:19 UTC
Hello,

I had an idea to make the Work Server IP address that is displayed in the Status tab, Queue panel, a clickable link. The link would take you to the Server Status page for that Work Server. Quick way to see if the server being down is the reason why the work unit hasn't uploaded yet.

Example: 171.64.65.65

http://fah-web.stanford.edu/logs/171.64.65.65.log.html

If you wanted to get fancy, only display the link in the Expert view. :)

Thanks.

auto convert Python 2 to 3 app

I wonder if the following link is helpful in quick-converting FAHControl from Python 2 to Python 3?
Even if it runs with bugs, we at least would have a working control version (or Beta) for a modern Ubuntu/linux.
Newer hardware supporting PCIE 4.0 might not be supported anymore on older Linux versions.

https://docs.python.org/2/library/2to3.html

Fahcontrol no longer installs on Ubuntu 18.04 or 20.04

Please update fahcontrol to work on modern Ubuntu and its derivatives. Please update bindings to python2 and ftw3. Python2 and gtk2 are end of life and no longer supported.
A warning on the folding at home download page that fahcontrol only works on Ubuntu 16.04 variants would be helpful.
Maybe update the web control component to support advanced control options currently available via fahcontrol.
It does not seem untenable to expect support of major OS releases every few years.

python-gtk2 not installable on ubuntu 20.04

`Reading package list... Done
Building dependency tree
Reading state information... Done
Package python-gtk2 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Unable to locate package python-gtk2`

Option to Finish and Shutdown

When a task is close to completion I'd like to allow it to finish before I shut down the computer. It would be preferable to achieve that within the advanced controls rather than scheduling a shutdown after the estimated time.

Option to Pause Work Until Battery Is Full

My MacBook Pro (15-inch, 2018) does not charge while FAHControl is running.

I'd like to see an option to Pause Work Until Battery Is Full or to be able to reduce the workload until the battery is full.

Aero-Ion theme crashes on Windows

(same as issue #16?)

On Win7 64-bit OS, in the Advanced Control, if I go to Preferences and choose the "Aero-Ion" theme, the Advanced Control will crash immediately.

optirun and primusrun

Some systems manage both the Integrated GPU and a Discrete GPU to maintain performance while saving power. Steam and other games have figured out how to run the game on the dGPU while leaving the occasional desktop updates to the iGPU. Though this is an unusual configuration, it would be nice if FAH could do the same.

See https://foldingforum.org/viewtopic.php?f=96&t=30815

A simple set of instructions is probably enough if there's a way for the Donor to support it himself but I don't see how to do that. Can an argument be passed to the CoreWriappen?

Fah-Control 7.4.16 beta slot context menu "On Idle" not applied immediately

In Fah-Control 7.4.16 beta you can open context menu on a folding slot and check the option "On Idle".
This adds the slot extra option idle=true. But the fah config is not re-read immediately and the slot with checked "On Idle" option keeps running.

When the idle=true option is set using the dialog edit slot extra options and dialog is closed again then fah config is re-read and the slot options apply immediately.

Expected behavior: Slot context menu "On idle" is applied immediately.
https://foldingforum.org/viewtopic.php?f=96&t=29749&p=293533#p293533

The FAHViewer button in FAHControl can only view the Demo protein

There needs to be an option associated with the FAHViewer button that allows the user to select an active WU/slot to provide real-time images.

This is a carry-over from a very old FAHControl from the time when FAHClient ran only one WU. Donors had one copy of FAHControl per WU (i.e. - per slot) so the choice was made by opening a different FAHClient/FAHControl.

FAHControl log viewer errors (trivial)

When viewing a log, the filter by WU and by Slot is inconsistent.

When filtering by WARNINGS & ERRORS I see

******************************* Date: 2019-03-21 *******************************
17:35:30:WU02:FS02:0x22:ERROR:SmartPointer: Can't dereference a NULL pointer!
17:35:30:WU02:FS02:0x22:ERROR:Exception: Failed to open 'logfile_01.txt': SmartPointer: Can't dereference a NULL pointer!: Success
17:35:30:WU02:FS02:0x22:ERROR:Exception: Failed to open 'science.log': SmartPointer: Can't dereference a NULL pointer!: Success
17:35:30:WU02:FS02:0x22:WARNING:While cleaning up: Win32: 0xc0000005: Exception access violation
17:35:34:WARNING:WU02:FS02:FahCore returned an unknown error code which probably indicates that it crashed
17:35:34:WARNING:WU02:FS02:FahCore returned: WU_STALLED (127 = 0x7f)
******************************* Date: 2019-03-21 *******************************
******************************* Date: 2019-03-22 *******************************

Every one of those messages is WU02:FS02
When also filtering by either Slot2 or WU2 (or both). I see only

******************************* Date: 2019-03-21 *******************************
17:35:34:WARNING:WU02:FS02:FahCore returned an unknown error code which probably indicates that it crashed
17:35:34:WARNING:WU02:FS02:FahCore returned: WU_STALLED (127 = 0x7f)
******************************* Date: 2019-03-21 *******************************
******************************* Date: 2019-03-22 *******************************

Why are the messages from core22 not shown?

Could not find suitable distribution for gtk2

I downloaded the repo and ran setup.py and got the following error:

Searching for gtk2>=2.14.0
Reading https://pypi.org/simple/gtk2/
Couldn't find index page for 'gtk2' (maybe misspelled?)
Scanning index of all packages (this may take a while)
Reading https://pypi.org/simple/
No local packages or working download links found for gtk2>=2.14.0
error: Could not find suitable distribution for Requirement.parse('gtk2>=2.14.0')

Any idea how to resolve this?

Copy client config to clipboard - help to troubleshoot

Reported by @7im- on 4 Aug 2010 16:02 UTC
Please consider adding a button that copies the currently selected client's config.xml file contents to the clipboard in Windows (minus the passkey, if possible).

This would be very helpful for new users trying to seek help on the folding forum. We often ask for a copy of their config file to help us diagnose issues.

Thanks.

FAHControl won't start on Fedora 31 (Python 3 by default) [workaround]

Installed fahcontrol-7.5.1-1.noarch on Fedora 31 x86_64. It won't start:

  File "/usr/bin/FAHControl", line 57
    if sock.recv(1024).strip() == 'OK': print 'Ok'
                                                 ^
SyntaxError: invalid syntax

This appears to be because Fedora defaults to Python 3 and FAH needs Python 2.

Workaround: run this from a terminal:

python2 /usr/bin/FAHControl

Or edit the first line of /usr/bin/FAHControl to:

#!/usr/bin/python2

(add the 2)

This is the same as #50 which was opened and then immediately closed. See also #39, #53, #56.

Display psummary info in GUI

Reported by @jcoffland on 6 Aug 2010 23:09 UTC
Show both psummary information about WU's in the queue and also a list of work server's and their status in advanced or expert mode. This could link to a WS status page built from data from F@H serverstat.

FahControl 7.5.0 beta for Windows theme libs missing

In FahControl 7.5.0 beta for Windows the theme libs are missing.
C:\Program Files (x86)\FAHClient[lib\gtk-2.0\2.10.0\engines]MISSING

When I manually copy the dlls from FahClient 7.4.16 then the themes are fully working again.

Without the dlls the icons and images are not loaded on Windows and the themes look flat and colors and 3D effects missing. Also reported here by toTOW
https://foldingforum.org/viewtopic.php?f=104&t=30789&start=15#p301384

Following the log eventually stops updating the screen and it should continue following till unchecked.

Reported by @P5-133XL on 9 Sep 2010 05:20 UTC
I have noticed that the GUI client eventually stops following the log requiring that the user hit the refresh button to display the current log even though follow is check-marked.

The whole point of following the log is so that the user can get the status of the client with a glance without having to refresh. If the GUI stops following then what is displayed does not actually show the current status.

Resize window or panel in FAHGUI not saved

Reported by @7im- on 4 Aug 2010 16:24 UTC
Hello,

When I resize any of the panels in the gui, or resize the entire window, that size change is not saved.

If I have 20 clients, and a large monitor, I would like to make the slot panel larger so I can see all of my clients (slots). And it would be nice if I could save that change. I'd prefer not to have to resize my panels and app size each time I start the fahgui.

Thanks.

Easier indication on stalled slots

It should be a small line of code to add, to see which GPU slots have stalled since the last time Control was opened.
It's necessary in multi-slot environments.

Project link under Selected Work Unit does nothing when clicked

The project link in FAHControl, shown in screenshot with label "14328" here:

image

does nothing when clicked. The right-click option, "Copy URL", seems to copy nothing if chosen.

Expected click to open default web browser to, in the case of 14328, https://apps.foldingathome.org/project?p=14328.

Version was 7.5.1 for Windows, the latest currently available from https://foldingathome.org/start-folding/ as of March 16 2020.

It appears this is possibly fixed in 7.5.2 98d6ba2. That fix commit was in 2018. Some release tracking/drumbeat may be needed to get these fixes out.

Incorrect modality for slot config dialog

Reported by @bb30994 on 10 Sep 2010 14:45 UTC
New install of .13 with two slots. Clicked on edit slot and successfully added some options. Later, went back to configure other slot. Due to short memory, I didn't remember the setting I wanted to change so I canceled and switched to the other slot '''quickly''' (too fast for the GUI to filter the xml for the new slot). This produced a non-responsive window still showing both slots, not the expected Edit window.

Later, I discovered a new window which was BEHIND the non-responsive window which actually had focus. should happen The new window was only a few pixels high and contained no information. Closing the new window returned focus to the ConfigClient window, which now could be closed.

I don't think it matters, but the slots are set for FinishAll.

Reopening the ConfigClient produces an empty (all gray) window, so it's still hung. Stopping / Restarting the GUI fixes the problem.

NOTE: There is no "UPDATING" indicator when switching from slot 1 to slot 0 so there's no visual indication that I was going too fast and stacked mouse interrupts don't seem to be prohibited.

Hot spot for GUI shrinks full-screen gaming applications

Reported by @P5-133XL on 21 Aug 2010 10:39 UTC
I observed while playing Starcraft 2, full screen, that every once in a while I would hit the GUI hot spot and it would shrink the game and bring the desktop online.

People that are playing games Do not like their game being interrupted!

All GUI screens need a BUSY indicator

Reported by @bb30994 on 10 Sep 2010 21:36 UTC
The UPDATING indicator covers a small fraction of the times when the GUI is unable to manage a new request. e.g.- choosing Pause or Finish takds several seconds during which time it's not clear that the mouse-click has been accepted. Selecting some other function during this time often leads to a GUI hang.

When a click is accepted IMMEDIATELY turn on some kind of (red?) BUSY or WAIT indicator and reset it (to a neutral color) once the client has delivered a COMPLETED status to the GUI.

The GUI-CLIENT interface (and AFAICT the Client) is not designed to deal with multiple simultaneous requests. Unlke other GUIs, it's also much slower than other methods of doing things so the user expectations mus be managed -- perhaps by informing him that further input is (temporarily) not acceptable.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.