Hypography Distributed Computing Team
#16
Posted 01 March 2006 - 12:35 PM
I just tried to attach to them, and I got connected to them...no work thoughl.
Morten S
- Time is fun when we're having flies. - Kermit the frog
Let's BOINC for Hypography! || MyBoincStats ||Hypography BoincStats
- Time is fun when we're having flies. - Kermit the frog
Let's BOINC for Hypography! || MyBoincStats ||Hypography BoincStats
#17
Posted 07 July 2007 - 01:34 PM
I made a Hypography team for the Seasonal Attribution Project at climateprediction.net which comes with pretty steep hardware reqs. =
Hypography
Hypography
Life is a wave, which in no two consecutive moments of its existence is composed of the same particles. -- John Tyndall
#18
Posted 15 May 2008 - 10:09 AM
just put up my third system on this
this one is nix, and its supposed to run transparently (shhh)
my biggest problem is that on nix, boinc has not provided a way to limit cpu usage, and for me, it's a big deal, when i am installing it on a future router....
i think i may have found a solution though
this one is nix, and its supposed to run transparently (shhh)
my biggest problem is that on nix, boinc has not provided a way to limit cpu usage, and for me, it's a big deal, when i am installing it on a future router....
i think i may have found a solution though
//cpulimit.c
/**
* Simple program to limit the cpu usage of a process
*
* Author: Angelo Marletta (marlonx80@hotmail.com)
*/
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <sys/time.h>
#include <unistd.h>
#include <sys/types.h>
#include <signal.h>
#include <sys/resource.h>
//pid of the controlled process
int pid;
//SIGINT signal handler
void quit(int sig) {
//let the process continue if it's stopped
kill(pid,SIGCONT);
exit(0);
}
int main(int argc, char **argv) {
if (argc!=3) {
fprintf(stderr,"Usage: %s {pid} {max cpu percentage}n",argv[0]);
exit(1);
}
pid=atoi(argv[1]);
int limit=atoi(argv[2]);
if (limit>100 || limit<0) {
fprintf(stderr,"limit must be in the range 0-100n");
exit(1);
}
//if possible renice this process, so it has more responsiveness
if (setpriority(PRIO_PROCESS,getpid(),-20)!=0) {
printf("Warning: cannot renice.nTo work better you should run this program as root.n");
}
signal(SIGINT,quit);
//time quantum in microseconds
int period=100000;
struct timespec twork,tsleep; //time to work, and time to sleep
twork.tv_sec=0;
twork.tv_nsec=period*limit*10;
tsleep.tv_sec=0;
tsleep.tv_nsec=period*(100-limit)*10;
while(1) {
if (kill(pid,SIGSTOP)!=0) break;
nanosleep(&tsleep,NULL);
if (kill(pid,SIGCONT)!=0) break;
nanosleep(&twork,NULL);
}
perror("kill()");
exit(1);
}
~ Sun, number 1 cause of global warming.
Caution: some thinking required when using this product, keep your axons and dendrites inside your head at all times.
Caution: some thinking required when using this product, keep your axons and dendrites inside your head at all times.
#19
Posted 15 May 2008 - 11:08 AM
(note, for some insane reason VB blocks anything with a $ in front of it... so i HAD to not use the code tags)
Here's what i did so far to get limiting, working:
after following the normal installation steps do the following:
copy the code above into limiter.c file in wherever your BOINC directory is.
compile it:
gcc limiter.c -o limiter
now lets go and edit an init.d script:
nano -w /etc/init.d/boinc
first, you will see a lot of defined values. Take a moment and add one more to it
MAX_FREQ=60
now go to section that says
echo -n "Starting BOINC client as a daemon: " su $BOINCUSER -c "$BOINCEXE $BOINCOPTS" >>$LOGFILE 2>>$ERRORLOG & sleep 1 PID=`pidof -s -x -o $$ -o $PPID -o %PPID $BOINCEXE` if [ $PID ]; then [ -d $LOCKDIR ] && touch $LOCKDIR/boinc
add this just after that line
# rather dirty way of doing this ./limiter $PID $MAX_FREQ &
this will start the limiter when you start the service
now only to kill it when you are done
go to section that says:
cd $BOINCDIR if [ ! -f lockfile -a ! -f $LOCKDIR/boinc ] ; then echo -n "BOINC is not running (no lockfiles found)." echo_success else echo -n "Stopping BOINC client daemon: " killproc $BOINCEXE && echo_success || echo_failure # clean up in any case rm -f $BOINCDIR/lockfile rm -f $LOCKDIR/boinc
now lets add one more line to it
killall limiter
save, restart service, do a ps -ef f, make sure limiter is in there, do a top, to make sure that whatever boinc is doing, it is not exceeding whatever max percent utilization, and we are in game
Here's what i did so far to get limiting, working:
after following the normal installation steps do the following:
copy the code above into limiter.c file in wherever your BOINC directory is.
compile it:
gcc limiter.c -o limiter
now lets go and edit an init.d script:
nano -w /etc/init.d/boinc
first, you will see a lot of defined values. Take a moment and add one more to it
MAX_FREQ=60
now go to section that says
echo -n "Starting BOINC client as a daemon: " su $BOINCUSER -c "$BOINCEXE $BOINCOPTS" >>$LOGFILE 2>>$ERRORLOG & sleep 1 PID=`pidof -s -x -o $$ -o $PPID -o %PPID $BOINCEXE` if [ $PID ]; then [ -d $LOCKDIR ] && touch $LOCKDIR/boinc
add this just after that line
# rather dirty way of doing this ./limiter $PID $MAX_FREQ &
this will start the limiter when you start the service
now only to kill it when you are done
go to section that says:
cd $BOINCDIR if [ ! -f lockfile -a ! -f $LOCKDIR/boinc ] ; then echo -n "BOINC is not running (no lockfiles found)." echo_success else echo -n "Stopping BOINC client daemon: " killproc $BOINCEXE && echo_success || echo_failure # clean up in any case rm -f $BOINCDIR/lockfile rm -f $LOCKDIR/boinc
now lets add one more line to it
killall limiter
save, restart service, do a ps -ef f, make sure limiter is in there, do a top, to make sure that whatever boinc is doing, it is not exceeding whatever max percent utilization, and we are in game
~ Sun, number 1 cause of global warming.
Caution: some thinking required when using this product, keep your axons and dendrites inside your head at all times.
Caution: some thinking required when using this product, keep your axons and dendrites inside your head at all times.
#20
Posted 24 May 2008 - 08:08 AM
~ Sun, number 1 cause of global warming.
Caution: some thinking required when using this product, keep your axons and dendrites inside your head at all times.
Caution: some thinking required when using this product, keep your axons and dendrites inside your head at all times.

Help
Join now


Promote to Article











