Message boards :
Number crunching :
GUPPI Rescheduler for Linux and Windows - Move GUPPI work to CPU and non-GUPPI to GPU
Message board moderation
Previous · 1 . . . 29 · 30 · 31 · 32 · 33 · 34 · 35 . . . 37 · Next
Author | Message |
---|---|
Jimbocous Send message Joined: 1 Apr 13 Posts: 1853 Credit: 268,616,081 RAC: 1,349 |
If you do end up in another thread on this, I'd love to follow along... |
Stephen "Heretic" Send message Joined: 20 Sep 12 Posts: 5557 Credit: 192,787,363 RAC: 628 |
. . If I make any progress I will bear that in mind :) . . At the moment I am working with Stubbles' script because it is shorter and less complicated. It is mostly echo commands and even that has taken me ages to get to run through without errors. Everything else bombs every time. The linux workaround for the pause command ... bombs, even the sleep command that works from the command line in terminal won't work in the script. I have lots of reading to do it seems. The alternative command to 'TYPE' which is 'cat' works AOK from the command line in terminal too, but fails to find the target file when run from the script. Once I have worked out enough of the basic translations to get this script working (am I aiming too high?) I will see if I still have the motivation to tackle your script. I think that one will be a LOT of work. Stephen <shrug> |
Jimbocous Send message Joined: 1 Apr 13 Posts: 1853 Credit: 268,616,081 RAC: 1,349 |
Fair enough. Just remember there was a bunch of stuff in that early version that either didn't work or worked improperly, hence all the differences. |
Stephen "Heretic" Send message Joined: 20 Sep 12 Posts: 5557 Credit: 192,787,363 RAC: 628 |
. . I don't suppose you would know why commands that work AOK from the command line in a terminal window ALL fail when launched from a shell script? They all either return command not found or reject the parameter switches or "cannot find file" when it is right there in the same folder. Even a simple built in command like exit bombs in the script. Linux totally befuddles me. And if I search on a question about this I get a lot of "stuff" that has nothing to do with my problem. I even tried to take advantage of an offer of a free handbook for dummies, err I mean beginners like me, to help write shell scripts and use the BASH interpreter, but you had to give them your email and I still have not seen the email with the link to the handbook. . . Talk about bashing my head on a brick wall :( Stephen :( |
Brent Norman Send message Joined: 1 Dec 99 Posts: 2786 Credit: 685,657,289 RAC: 835 |
You either don't have permission to run it, or you are not defining the path if it can't find something. Try running a single command from within a script to find out what you are missing. |
Sleepy Send message Joined: 21 May 99 Posts: 219 Credit: 98,947,784 RAC: 28,360 |
Is there a way to graciously quit the Boinc Manager and the clients from a command line (Windows)? I have been trying with boinccmd --quit, but it blanks the Manager without quitting it and leaves the clients running. Invoking boincmgr again from the command line opens a new instance of Boinc. taskkill also gives no good effect, at least the ways I have tried. Thank you in advance! |
Stephen "Heretic" Send message Joined: 20 Sep 12 Posts: 5557 Credit: 192,787,363 RAC: 628 |
You either don't have permission to run it, or you are not defining the path if it can't find something. . . Nope, I have tried every form of the path from the root directory down as in /home/user/BOINC/level3/filename down to ./filename and all result in file not found. I have "remarked" out every command except the echo commands which are working then tried re-instating them one at a time and they still fail with the same errors. Yet when I run those same commands from the command line in a terminal window they work AOK. As I said, even exit at the end of the script returns an error. I have tried each command on it's own in a window and they all work fine, except for GOTO for which I cannot find a Linux equivalent. :( . . Sleep 5 in a window sleeps for 5 secs as it should, but in the script it returns an error that the parameter is wrong showing 5\r. So what does 'x'\r mean? I cannot find a reference to it. . . Such a strange system. Stephen ?? |
Brent Norman Send message Joined: 1 Dec 99 Posts: 2786 Credit: 685,657,289 RAC: 835 |
I just tried a very simple script and sleep seems to work fine, I just added the date command to see the 5 second delay. brent@Brent-P9X79:~$ cat /home/brent/Desktop/TestSleep.sh date sleep 5 date brent@Brent-P9X79:~$ /home/brent/Desktop/TestSleep.sh Thu Apr 6 16:58:48 CST 2017 Thu Apr 6 16:58:53 CST 2017 brent@Brent-P9X79:~$ |
Stephen "Heretic" Send message Joined: 20 Sep 12 Posts: 5557 Credit: 192,787,363 RAC: 628 |
I just tried a very simple script and sleep seems to work fine, I just added the date command to see the 5 second delay. . . Hey, while that did not directly solve my problem it did put me on the right track. When I created a whole new script file with just the date and sleep commands in it, it worked as it should. This caused me to realise that in copying the Windows .cmd file (by loading it into Gedit and then saving it) something from the windows file that does not show as text must have tagged along and THAT something was screwing with the Bash command interpreter. I opened a fresh empty text file with Sublime Text and copied the text contents from the orginal over to it then saved before making the basic changes that I know so far should work and saving it again. This new version works much better. Sleep {wait} and the pretend pause command now work AOK. I have even found out how to set screen colours (with limited success) so I am getting closer to getting it working. Linux is a tad cantankerous when commands in Dos like '| more' translate to '| less', I never saw that one coming :). But many thanks for the help. . . But it still has a functional problem, while it does page the output as the original script did, it locks it into a mode of it's own and will not exit, so the script cannot continue. It seems there is always another stumbling block with Linux. Not to mention finding a workaround for LABELs and GOTO statements, 'IF exists" function and other commands. . . Maybe I will have it working before Christmas? LOL brent@Brent-P9X79:~$ cat /home/brent/Desktop/TestSleep.sh . . BTW, what is the purpose of the first line, that is to say, the part that is underlined? Stephen :) |
Brent Norman Send message Joined: 1 Dec 99 Posts: 2786 Credit: 685,657,289 RAC: 835 |
. . BTW, what is the purpose of the first line, that is to say, the part that is underlined?Just to show the contents of the script that I was testing. EDIT: Oh, Same as The DOS prompt with more detail. brent@Brent-P9X79:~$ brent -- Username Brent-P9X79 -- Computer Name ~ -- Working directory (home) BTW, 'pwd' will show your directory too. |
Keith Myers Send message Joined: 29 Apr 01 Posts: 13164 Credit: 1,160,866,277 RAC: 1,873 |
As far as I can remember from my time with Linux, you can't directly copy DOS or Windows text files into Linux without stripping the Line Feed/Carriage Return at every line. Linux only uses a Line Feed to indicate EOL. That is what screwed up your direct import. There are Linux text utilities that can strip the DOS EOL and reformat the text into compatible Linux text as a function of the import command. Seti@Home classic workunits:20,676 CPU time:74,226 hours A proud member of the OFA (Old Farts Association) |
Stephen "Heretic" Send message Joined: 20 Sep 12 Posts: 5557 Credit: 192,787,363 RAC: 628 |
. . BTW, what is the purpose of the first line, that is to say, the part that is underlined? . . That is useful to know. It could help get this script working better. Does the tilde {~} have to be used as part of the full prompt or can it be employed alone? That is will ~$ return the current directory as a string? Or are ~$ and pwd $ equivalent functions? Stephen ? |
Stephen "Heretic" Send message Joined: 20 Sep 12 Posts: 5557 Credit: 192,787,363 RAC: 628 |
As far as I can remember from my time with Linux, you can't directly copy DOS or Windows text files into Linux without stripping the Line Feed/Carriage Return at every line. Linux only uses a Line Feed to indicate EOL. That is what screwed up your direct import. There are Linux text utilities that can strip the DOS EOL and reformat the text into compatible Linux text as a function of the import command. . . OK that does explain the problem. But thankfully copying the text itself from the original file to a blank text file and resaving seems to have achieved the same result, i.e. stripped the unwanted carriage return characters. The commands I have "discovered" are now working instead of returning errors. But I now still have to find a way to get the '| less' paging function [I still want to say '| more'] to exit on completion and return to the script to carry on. And if anyone knows how to achieve the same result in a bash shell file as GOTO and LABEL in Dos I could have the problem halfway beat! :) Stephen :) |
Stephen "Heretic" Send message Joined: 20 Sep 12 Posts: 5557 Credit: 192,787,363 RAC: 628 |
. . Hell's Bells, . . I am getting close enough to a workable shell file that I have had a look at the client_state.XML file. It is very very different to the windows equivalent. I don't think I can find way to change the entries to move a task from one queue to the other. Too many things are different in the way BOINC treats the file. :( And with MrKevvy's effort not working for me I guess I am screwed :( ... oh well! Stephen :( |
Stephen "Heretic" Send message Joined: 20 Sep 12 Posts: 5557 Credit: 192,787,363 RAC: 628 |
. . . @ Kevin, . . Any chance you could give me a little help. The rescheduler keeps saying there are no non-guppi tasks in my CPU queue to move. Is there something that I might be doing wrong that I need to change to get it to work. There have been between 17 and 45 non-guppi tasks present when it gives that result. Stephen ?? |
Brent Norman Send message Joined: 1 Dec 99 Posts: 2786 Credit: 685,657,289 RAC: 835 |
I wasn't quite sure where to post this, so I will put it here. I have been fairly aggressively using cpu2gpu (a variant of GUPPI reschedule) to increase my LINUX GPU cache size for outages, and it has been working well getting a little over 1000 tasks for about 13 hours worth. But now I have run into an issue since I have pulled my CPU estimated times down to as little as 1.5m/task. So now I get (on 2 machines AVX and ssse3): 197 (0x000000C5) EXIT_TIME_LIMIT_EXCEEDED . . . but no more details in Stderr output. errors on my CPU tasks at around 1h45m. From what I've found that is from BOINC killing the task because it exceeded 20x the estimated runtime. OK, I understand that. A work around I found is to search/replace in client_state <rsc_fpops_bound> . . . with <rsc_fpops_bound>1 to increase the limit on tasks, That seems to be working so far for current tasks, but anything new will again error out I'm certain. And I can't complete CPU tasks now without doing that :((( A note I found about adding <flops> to app_info might be a solution, but not really sure since it was a discussion regarding GPUs and this error. And I don't see it in BIONC notes regarding CPU apps. So I have: Benchmark results: Number of CPUs: 12 3481 floating point MIPS (Whetstone) per CPU 12936 integer MIPS (Dhrystone) per CPU So does this look right?? </app> <file_info> <name>MBv8_8.05r3345_avx_linux64</name> <executable/> </file_info> <app_version> <app_name>setiathome_v8</app_name> <platform>x86_64-pc-linux-gnu</platform> <version_num>800</version_num> ...... <flops>3481</flops> ...... <file_ref> <file_name>MBv8_8.05r3345_avx_linux64</file_name> <main_program/> </file_ref> </app_version>Or is that times 1,000,000 Or will it even work? Anyone know? Anyone else run into this and found a way out? |
Brent Norman Send message Joined: 1 Dec 99 Posts: 2786 Credit: 685,657,289 RAC: 835 |
Just to add a note for anyone else that may have this issue. Adding <flops> to the CPU app_info does work to adjust CPU task runtimes. For me: Benchmark results: Number of CPUs: 12 3481 floating point MIPS (Whetstone) per CPU 12936 integer MIPS (Dhrystone) per CPU Using 3481 x 1,000,000 / 50 ... or <p_fpops> (from client_state) / 50 Works to 'normalize' runtimes for new CPU task downloads. Don't ask why 50 seems to work, but it does, at least for my 2 computers. At least it is close, it can be tweaked from there. |
Stephen "Heretic" Send message Joined: 20 Sep 12 Posts: 5557 Credit: 192,787,363 RAC: 628 |
. . Hi Brent . . I am going to have to look into thaty CPU2GPU app. I need to do something to top up my GPU cache for the outages. Especially when I convert Bertie over to Linux. . . BTW, was it you who mentioned something about a configurable setting in Ubuntu that allows you to move the max/min and close buttons from the default top left corner to the top right corner? I really would like to be able to do that now. Stephen ?? |
Brent Norman Send message Joined: 1 Dec 99 Posts: 2786 Credit: 685,657,289 RAC: 835 |
No I didn't mention moving the buttons. But Crimson Mint does have a very Windoze look to it, including Max/Min/Close. The answer is in the other thread about changing the GUI to one you like. I know you read that :) I may try that too at some point, but I can live with it. |
Tom M Send message Joined: 28 Nov 02 Posts: 5124 Credit: 276,046,078 RAC: 462 |
Ok, I'm confused. I got this message because I am running SetiBeta. Reading configuration files... So what am I supposed to do, I don't want the SetiBeta files to get scrambled into the production queue? Thanks, Tom A proud member of the OFA (Old Farts Association). |
©2024 University of California
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.