Page 1 of 2 12 LastLast
Results 1 to 40 of 51

Thread: dfGUI v3.0 for Win available (For Phase II)

  1. #1

    Exclamation dfGUI v3.0 for Win available (For Phase II)

    With Phase II of DF supposed to be starting tomorrow (Tuesday), I am releasing v3.0 of dfGUI wich has a new look and interface. This version will only work with Phase II of the DF project (it also works with the Phase II beta client so you can try it out now if you have a copy).

    You can get it in the regular location:
    http://gilchrist.ca/jeff/dfGUI/

    v3.0 (Jun. 16, 2003)
    - NOTE: This version will only work with the new Phase II of Distributed Folding and will not work with the Phase 1 client.

    - Changed look of dfGUI adding tabs to simplify the user interface

    - Removed obsolete switches that are no longer in Phase II.

    - "Save Config" now gives you a confirmation window letting you know if the .ini file was saved properly or not.

    - GUI now displays information about generations.

    - GUI has 3 bar graph displays for the current structure laxness level. If a protein gets stuck 3 times it will increase the laxness level for that generation and this value will be shown in the 3 graphs. If the graph reads 0% that means it has not relaxed any of the parameters.

    - Due to the way generations work, the benchmark data will get reset when a new generation begins.

    - Removed structures per second and minute since the new beta works more slowly these values no longer make sense.

    - # generations is configurable in Config window.

    - Added display to keep track of best energy seen since you started the GUI and shows which generation # it was found in.

    - Added display to indicate time it took to complete the previous generation and average generation time.

    - Benchmark output to file info now shows current generation.

    - Best energy so far now shows which generation # it was found in.

    - Added Tab to display history of best energy seen for each generation (this data is saved to dfGUI.gen to survive the GUI being closed).

    - Added Tab to graph the best energy vs generation to see a visual representation of how your DF client is doing. The maximum number of points graphed per page is also configurable.

    MD5 Sum:
    31fa52fa913f0c7199f72c4f08835997 dfGUIv30.zip
    93ddef515b0ed26fd92219430672ca1a dfGUIv30src.zip

    If you have any problems please let me know.

    Jeff.

    Screen Shots:

    You can find more screenshots here.
    Attached Images Attached Images
    Last edited by Digital Parasite; 06-16-2003 at 02:14 PM.

  2. #2
    Fixer of Broken Things FoBoT's Avatar
    Join Date
    Dec 2001
    Location
    Holden MO
    Posts
    2,137
    thank you

    Use the right tool for the right job!

  3. #3
    Senior Member
    Join Date
    Sep 2002
    Location
    Meridian, Id
    Posts
    742
    And as always DfGui Rules!


  4. #4

  5. #5
    TeAm AnandTech Insidious's Avatar
    Join Date
    Aug 2002
    Location
    Indianapolis, IN.
    Posts
    96

    Talking

    You are the absolute BEST Jeff!

    -Sid

    PS: What is '# generations'?
    ~~~~ Just Passin' Through ~~~~

  6. #6
    Thanks for all the nice comments everyone.

    Originally posted by Insidious
    PS: What is '# generations'?
    If you haven't seen the beta version of the client, it now works in generations. During the beta there was 250 generations but that could change so I made that value configurable in the GUI so people could modify it themselves instead of having to download a new version of the GUI.

    Jeff.

  7. #7
    TeAm AnandTech Insidious's Avatar
    Join Date
    Aug 2002
    Location
    Indianapolis, IN.
    Posts
    96
    Thanks DP,

    I'm half-way home...

    The next questions would be.... how will I determine what to set it to.

    What happens if I accidentally set it incorrectly?

    Sid
    ~~~~ Just Passin' Through ~~~~

  8. #8
    Senior Member
    Join Date
    Mar 2002
    Location
    MI, U.S.
    Posts
    697
    Originally posted by Insidious
    The next questions would be.... how will I determine what to set it to.

    What happens if I accidentally set it incorrectly?
    Then your gen percentage and gen % bar graphs will be off. Whoop-de-doo.

    Unless something else changed in 3.0 that depends more on that (maybe I should just keep my mouth shut, Jeff? ).

    There will be a Linux version of 3.0, too... umm, sometime. I haven't had a lot of time lately to do stuff like this, but hopefully I will in the coming week(s). With any kind of luck... I'll post back when it's ready, in any case.

  9. #9
    Originally posted by Insidious
    The next questions would be.... how will I determine what to set it to.

    What happens if I accidentally set it incorrectly?
    If you look at the docs when the Phase II client is released, I'm sure Howard will mention somewhere how many generations it will be.

    As bwkaz said, if you set it incorrectly it just means that your generation bar graph and percentage will be off since the GUI won't know the total # of generations to expect.

    Jeff.

  10. #10
    TeAm AnandTech Insidious's Avatar
    Join Date
    Aug 2002
    Location
    Indianapolis, IN.
    Posts
    96
    Thanks folks
    ~~~~ Just Passin' Through ~~~~

  11. #11
    Boinc'ing away
    Join Date
    Aug 2002
    Location
    London, UK
    Posts
    982
    Originally posted by bwkaz

    There will be a Linux version of 3.0, too... umm, sometime. I haven't had a lot of time lately to do stuff like this, but hopefully I will in the coming week(s). With any kind of luck... I'll post back when it's ready, in any case.
    Yay! to dfGUI for Windows...double Yay! for the Linux version

    If/when you do release Linux dfGUI could you supply the exceutable (a la dfGUI for Beta 4)

    Once again - many to dfGUI

  12. #12
    IGNORE THIS POST!
    It seems the client itself IS actually stopping on it's own when run in service mode.

    Dammit!

    -----------------------------------------

    Hey Jeff, having a problem with it on the new client.

    I have a service install (2 cpu's) and it keeps switching and saying "client appears to be stopped" when it is still actually running.

    I hit start client and it comes right back up.

    Thanks for dfgui btw! Great little app
    Last edited by bunker; 06-17-2003 at 04:21 PM.
    TeAm Anandtech Distributed Computing

  13. #13
    Boinc'ing away
    Join Date
    Aug 2002
    Location
    London, UK
    Posts
    982
    Not sure if this is problem due to it being the first run or dfGUI is not picking up gen 1 (or 5 or 6 ) properly but:





    looks odd to me

    /edit - changing Progress Update to 1 seems to get round the problem...
    Last edited by pfb; 06-17-2003 at 05:13 PM.

  14. #14
    pfb, that was a problem I logged with Howard during the beta but he wasn't able to reproduce it. For me, if I didn't select update after 1 protein, it often never updated the progress.txt file properly when starting from generation 0.

  15. #15
    Member
    Join Date
    Apr 2002
    Location
    Denmark
    Posts
    45

    Error message in DFgui v3.0

    As soon as the client finished the first generation, dfgui posted the following error message:
    '11.267' is not a floating point value.

    It keeps in printing that error message once every 10 seconds (I have set it to refresh every 10 secons). The number changes according the number stated in the filelist.txt file, but the text in the error message is the same.

    Whats wrong?

  16. #16

    Re: Error message in DFgui v3.0

    Originally posted by mighty
    As soon as the client finished the first generation, dfgui posted the following error message:
    '11.267' is not a floating point value.
    Hmmmm. Can you e-mail me your dfGUI.gen file?

    Jeff.

  17. #17
    Member
    Join Date
    Apr 2002
    Location
    Denmark
    Posts
    45

    Re: Re: Error message in DFgui v3.0

    Originally posted by Digital Parasite
    Hmmmm. Can you e-mail me your dfGUI.gen file?

    Jeff.
    I have solved the problem in the meantime.

    It seems that if you use , for decimal separator (as we do in Denmark) it gives the error. Under "Control Panel->International" I changed the decimal separator to . and it works.

    Any way you can check for that in some future version?

    I love this new version by the way. Keep up the excellent work.

  18. #18

    Re: Re: Re: Error message in DFgui v3.0

    Originally posted by mighty
    It seems that if you use , for decimal separator (as we do in Denmark) it gives the error. Under "Control Panel->International" I changed the decimal separator to . and it works.

    Any way you can check for that in some future version?
    Oh wow, I never would have expected that. I never realized that changing your OS decimal seperator would affect underlying math routines. I figured it would just modify how Windows displays values to the user.

    I just tried changing the settings myself and see what is going on but I don't think there is anything that I can do. Somehow windows manages to change how floating point values are handled inside code that is already compiled. There are floating point values used inside the dfGUI code which uses periods (ie: 3.34) so it seems that it will not run on any machine that has their decimal seperator changed.

    I don't have any experience with writing code for international versions of Windows but I wonder how other people handle this problem since many programs use floating point values? Or is this just a strange artifact of the Borland C++ compiler that is not affected with something like MS Visual C++?

    Jeff.
    Last edited by Digital Parasite; 06-17-2003 at 07:39 PM.

  19. #19
    Member Nofinger's Avatar
    Join Date
    Dec 2001
    Location
    Netherlands
    Posts
    38
    I had the same problem but changing the decimal solved it for me also.
    mine stopped at 15.544 now its running fine again

    I didn't look at the progress.txt file so can't help you with that.
    But I can tell you I'm running Win XP.

    I reset one of my systems back to the old setting and got a error (the same) back right away.

    In the dfGUI.gen file are no "," only "."

    When I use the foldit.bat file the program runs normal

    Does having your decimal seperator settings set to ',' causes the DF client to write a comma to the file?
    No, it writes a "."

    Hope it helps you.
    Nofinger
    ...See you at the Windmills!!

    Proud Member of The Genome Collective

  20. #20
    Ol' retired IT geezer
    Join Date
    Feb 2003
    Location
    Scarborough
    Posts
    92

    Thumbs up Love This GUI

    Jeff,

    Great GUI... Love the new INFO, Graphs and All.

    It did give me pause when it would not just look at the distribfold sub-directory and show me progress at first (I installed dfGui in its own sub-directory). It complained that foldit.bat was not valid or available (or something like that) and indicated that DF folding was not running.

    However, when I "Q"ed the foldit task manually and then started it via dfGui, everything came up as it should.

    I've always run my DF clients as straight DOS tasks. I see lots of compaints when it is run as a service, so I avoid it.

    Thanks Again Jeff..

    Ned

  21. #21
    Senior Member
    Join Date
    Mar 2002
    Location
    MI, U.S.
    Posts
    697
    Originally posted by pfb
    If/when you do release Linux dfGUI could you supply the exceutable (a la dfGUI for Beta 4)
    When I do release a new version, it'll use autoconf and automake (this means it will have the "./configure, make, make install" installation process just like almost every other package in existence for Linux). Is that good enough, or do you still want a precompiled executable?

    I can do it, it's just that I'm almost POSITIVE that it won't work on a lot of other systems (my machine is running glibc 2.2 or 2.3, depending on which partition I boot to, and if you aren't running whatever version I compile against, it may not work). I suppose I could compile it twice, but then the space gets a little much... Whatever. Let me know.

    Originally posted by Nofinger
    No, it writes a "."
    Jeff, it sounds to me like this is the problem.

    The original error was "<number with a .> isn't a valid floating point value", and in that locale, it isn't (floating-point values need to have commas in them in that locale).

    To anyone having this problem -- if you set your locale's separator to a comma, then edit the dfGUI config (or .gen) file yourself to make them commas, does it at least work for a short time?

    The DF client probably needs to be changed to write commas in its log file, too, so this won't work for very long, but if dfGUI will at least read its config file, then that'll at least give a bit of direction.

  22. #22
    Originally posted by bwkaz
    Jeff, it sounds to me like this is the problem.

    The original error was "<number with a .> isn't a valid floating point value", and in that locale, it isn't (floating-point values need to have commas in them in that locale).

    To anyone having this problem -- if you set your locale's separator to a comma, then edit the dfGUI config (or .gen) file yourself to make them commas, does it at least work for a short time?

    The DF client probably needs to be changed to write commas in its log file, too, so this won't work for very long, but if dfGUI will at least read its config file, then that'll at least give a bit of direction.
    No, that is not the problem. By default, dfGUI fills up unknown generations with a single period '.' I just decided to use that character but could have picked anything. That has nothing to do with floating point values. It reads the data in as text and only tries to use the value if it is not a single . character.

    It doesn't matter if you can change the log files to be commas because internally in the source code there are things like b = c / 2.5; and that is where it will also generate errors. That is the part where I don't think I can do anything about it.

    Jeff.

  23. #23
    Boinc'ing away
    Join Date
    Aug 2002
    Location
    London, UK
    Posts
    982
    Originally posted by bwkaz
    When I do release a new version, it'll use autoconf and automake (this means it will have the "./configure, make, make install" installation process just like almost every other package in existence for Linux). Is that good enough, or do you still want a precompiled executable?

    I can do it, it's just that I'm almost POSITIVE that it won't work on a lot of other systems (my machine is running glibc 2.2 or 2.3, depending on which partition I boot to, and if you aren't running whatever version I compile against, it may not work). I suppose I could compile it twice, but then the space gets a little much... Whatever. Let me know.
    Could the pre-compiled executable be offered as a separate download? When I downloaded dfGUI 2.1 it would never compile but the executable offered with the beta dfGUI worked flawlessly...

  24. #24
    Originally posted by Digital Parasite
    pfb, that was a problem I logged with Howard during the beta but he wasn't able to reproduce it. For me, if I didn't select update after 1 protein, it often never updated the progress.txt file properly when starting from generation 0.
    I've seen that problem on 2 boxen today!

    For windows, it seems that just opening the file in notepad a time or three releases it and it starts to update. Nothing to do with dfGui, the progress.txt just doesn't update the best "gen" sometimes.

    For Linux, it took a restart.

    It's almost as if the file didn't get closed properly somewhere or somehow. Then opening and closing seems to set things right again.

  25. #25

    Re: Re: Re: Re: Error message in DFgui v3.0

    Originally posted by Digital Parasite
    I don't have any experience with writing code for international versions of Windows but I wonder how other people handle this problem since many programs use floating point values? Or is this just a strange artifact of the Borland C++ compiler that is not affected with something like MS Visual C++?
    No, Jeff. This is a problem that - so far - appears to occur exclusively with your dfGUI. Would be a desaster if it wasn't like that. Many people from our team encountered that problem. The most strange thing for me was that after stopping dfGUI and restarting, the error message appeared and dfGUI did not even open anymore (in all other cases I came across the error message comes up and after that I could still continue to use the monitor). So, as sad as it is - under these conditions I cannot use your monitor anymore (since - for other reasons - it is not acceptable to change the country settings in the OS).

    Michael.
    http://www.rechenkraft.net - Germany's largest distributed computing community

    - - - - - - - - - -
    RNAs are nanomachines or nanomachine building blocks. Examples: The ribosome, RNase P, the cellular protein secretion machinery and the spliceosome.

  26. #26
    Junior Member
    Join Date
    Jun 2003
    Location
    France
    Posts
    2

    dfGUI V3 and national settings

    Hello,

    I post from France, so I have exactly the same issues (under XP and NT) as Michael H.W. Weber, as we also use here the comma and not the dot as a decimal separator. And I also can't change my national settings to "English" without numerous and unpredictable side-effects on other applications.

    As an immediate workaround, perhaps you could give a link to download V2.2beta4 that I have successfully tested during the beta test, on the same environnments.

    Furthermore, I'm not a developer myself, but I'm pretty sure other members are professionals who have experience in multinational development, and may help you solve this issue.

    With all my hopes...

  27. #27
    25/25Mbit is nearly enough :p pointwood's Avatar
    Join Date
    Dec 2001
    Location
    Denmark
    Posts
    831
    Same here

    I'm now using PK's DCMonitor, which is also great, but it is intended to check several clients and give basic info about them, whereas dfGUI is for a single client and provides a lot more info.

    /me hopes Jeff will be able to fix this somehow
    Pointwood
    Jabber ID: pointwood@jabber.shd.dk
    irc.arstechnica.com, #distributed

  28. #28

    Re: dfGUI V3 and national settings

    Originally posted by gleyeny
    As an immediate workaround, perhaps you could give a link to download V2.2beta4 that I have successfully tested during the beta test, on the same environnments.
    So the 2.2beta4 version worked fine for you...

    Ok, well I will put up the 2.2beta for now until I figure out what is going on. Everyone can download it here:
    http://gilchrist.ca/jeff/dfGUI/dfGUIv22beta.zip

    Jeff.

  29. #29

    Question For all the people having floating point problem.

    OK, I'm trying to figure out if when you have your decimal seperator set to ',' if programs that normally use decimals will write those to the output file.

    Can a few people who are still running with theirs set to a comma ',' please e-mail me their progress.txt file (or post it here).

    It seems that initially dfGUI works fine, but only starts giving you these errors of you shut down the GUI and restart it again?

    Jeff.

  30. #30
    25/25Mbit is nearly enough :p pointwood's Avatar
    Join Date
    Dec 2001
    Location
    Denmark
    Posts
    831
    the client autoupdated and I updated dfGUI to ver. 3 and not too long thereafter, I went to bed. When I got up, dfGUI had shutdown and I got that error when I tried to start it again

    I'll try a clean install and send you the info you request
    Pointwood
    Jabber ID: pointwood@jabber.shd.dk
    irc.arstechnica.com, #distributed

  31. #31
    As far as I understand, this is the problem:
    the DF client saves a line
    Best Energy so far: 9.329
    in the progress.txt.
    Your dfGUI parses this line with
    inProgressFile [...] >> bestenergy;
    where bestenergy is a double.
    The >> operator for some reasons uses the locale settings on the machine, and therefore needs a ',' on german systems; there is no ',', and the dfGUI throws an exception.

    So, why don't you parse the value as char[], split it at the '.' and transform it to double:
    Code:
    #include <math.h>
    [...]
         char temp[20] = {"bad"};
    [...]     
         inProgressFile >> progtext >> progtext2 >> structcomplete
                        >> progtext3 >> currentgeneration
                        >> structremain >> progtext4 >> progtext5 >> progtext6
                        >> generationsbuffered >> progtext7 >> progtext8
                        >> progtext9 >> progtext10 >> progtext11 >> progtext12
                        >> temp;
         // close file
         inProgressFile.close();
        
    [...]
        char *pos;
        pos = strtok(temp, "."); 
        char *in = pos;  // in = integer part before the .
        pos = strtok(NULL, ".");
        char *fr = pos;  // fr = fractional part after the .
        bestenergy = atof(in) + atof(fr)* (1.0 / pow(10, strlen(fr)));  // here: bestenergy = 9.0 + 329.0 * 1/1000 = 9.329
    [...]



    EDIT: I don't have Borland C++ Builder 6 and couldn't test it, but it should work.
    Hope my English is good enough, /me is a german guy

  32. #32
    Junior Member
    Join Date
    Apr 2003
    Location
    Budapest, Hungary
    Posts
    12

    Re: For all the people having floating point problem.

    Originally posted by Digital Parasite
    OK, I'm trying to figure out if when you have your decimal seperator set to ',' if programs that normally use decimals will write those to the output file.

    Can a few people who are still running with theirs set to a comma ',' please e-mail me their progress.txt file (or post it here).

    It seems that initially dfGUI works fine, but only starts giving you these errors of you shut down the GUI and restart it again?

    Jeff.
    Yes. I have EN winXP, but with hungarian regional settings. I changed back to US, and now it is fine.
    I never used to be able to finish anything, but now I

  33. #33
    Originally posted by Gras
    [B]As far as I understand, this is the problem:
    the DF client saves a line in the progress.txt.
    Your dfGUI parses this line withwhere bestenergy is a double.
    The >> operator for some reasons uses the locale settings on the machine, and therefore needs a ',' on german systems; there is no ',', and the dfGUI throws an exception.
    Actually I don't think that is the problem since people are saying that v2.2beta worked fine for them and it used the same >> operator to get the value from the progress.txt file.

    It must be something new that I added since then. I will try and track down exactly where it is failing so I can try to solve the problem.

    Thanks for taking a look at the source, much appreciated.

    Jeff.

  34. #34
    Junior Member
    Join Date
    Jun 2003
    Location
    France
    Posts
    2
    Jeff,

    Thks for the link to the beta.

    To be precise, the problem appears after generation 0 has been uploaded, that is the dfGUI.gen file is, as fas as I understand, updated, dfGUI trying to read (in progress.txt ?) and store (in dfGUI.gen ?) the best energy so far for each generation from 001.

    Afterwards, the message "XX.XX is not a valid floating point value" appears each time a refresh is done, either automatically through the timer or manually through the provided "Refresh" button.

    If I stop dfGUI (without stopping DF client itself), and try to restart dfGUI, I then get the error message as a starter, and dfGUI doesn't even launch.

    If I stop DF client (deleting foldtrajlite.lock), and then launch dfGUI, it starts without error. I start DF client ("Start client" button) and everything runs smoothly ... until the first refresh. Back to the initial issue.

    Hope it can help

  35. #35
    I found the function that is causing the problem. It is something specific to Borland's compiler.

    Borland uses an AnsiString type which makes working with strings very easy. Unfortunately the conversion functions seem to check the locale settings and generate an error if the data doesn't conform.

    So for example the following code works just fine, even though I am using a period in the number and my locale is set to use commas:

    double testval = 2.453;

    But if I use the AnsiString function:

    AnsiString FloatValue = "2.453";
    double testval = FloatValue.ToDouble();


    It will fail on the .ToDouble() call. So I will have to re-write my code so that it doesn't use any AnsiString calls with the floating point value conversions and that should fix the problem.

    I'm not sure how quickly I will be able to release a new version so in the mean time as I said above, those people using , in their locale can download and use the v2.2beta posted on the main dfGUI web site for now:
    http://gilchrist.ca/jeff/dfGUI/dfGUIv22beta.zip

    I'm sorry for the trouble this is causing but I had no idea this kind of error could occur with that code.

    Jeff.

  36. #36
    Correct, the bug is in FindBestEnergyGen().
    Code:
    AnsiString FloatValue = BestEnergyList[i];
              if (FloatValue.ToDouble() < BestEnergySeen) {...}
    This conversion throws the exception.

    Why do you use AnsiString?
    Try
    Code:
    double FloatValue = atof(BestEnergyList[i]);
              if (FloatValue < BestEnergySeen) {...}
    or the code I posted before.

    (Again, not tested in your source code)

  37. #37
    25/25Mbit is nearly enough :p pointwood's Avatar
    Join Date
    Dec 2001
    Location
    Denmark
    Posts
    831
    Well, the good thing is that you/we now know what causes the error!

    Thanks for your quick reaction to this (for many people, *very serious* ) problem
    Pointwood
    Jabber ID: pointwood@jabber.shd.dk
    irc.arstechnica.com, #distributed

  38. #38
    Originally posted by Gras
    Why do you use AnsiString?

    Try
    Code:
    double FloatValue = atof(BestEnergyList[i]);
              if (FloatValue < BestEnergySeen) {...}
    or the code I posted before.
    I used it because it is easy to use and all the Labels and Text fields in the GUI are AnsiString types.

    As you pointed out and I said above, I should be able to get rid of using the AnsiString conversion and I should be fine. I just have to go and change the code now when I have some free time.

    Jeff.

  39. #39
    Not here rsbriggs's Avatar
    Join Date
    Dec 2002
    Location
    Utah
    Posts
    1,400
    All of the locale issues notwithstanding, I absolutely love the new features in version 3.0.
    FreeDC Mercenary


  40. #40
    Hey Jeff! Me again.

    When you have time do you think you could explain the whole "Structure Laxness Levels" thing?

    I understand that the percentages increase/decrease based on the number of times the protein gets stuck, but I'm confused as to what exactly the percentages mean and why there are 3 of them.



    Thanks!

    bunker
    TeAm Anandtech Distributed Computing

Page 1 of 2 12 LastLast

Posting Permissions

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