Angus Dorbie (dorbie++at++multipass.asd.sgi.com)
Tue, 15 Jul 1997 19:03:26 -0700
Octane comes with either 1 or 2 CPUs not 4.
>
> I would like to reserve one CPU for a numerical code
> to be sproc'd by the Performer code before the main loop.
>
> Basically...
>
> /******************************
>
> performer.c
>
> ******************************/
>
> main() {
>
> sproc(crunch, PR_SALL, (void *) &data);
>
> set-up-performer()
>
> while(!exitFlag) {
> pfuGetMouse(&mouse);
> pfiUpdateXformer(xformer);
> pfFrame();
> getmore();
> }
> }
>
>
> void crunch(void *data){
>
> sysmp (MP_MUSTRUN, (int) choose_cpu); /* <--------------- This alone
*/
> crunch_some_numbers()
>
> }
>
>
> Basically,
>
> I would like to ALWAYS use one CPU for a number crucher and NOTHING ELSE.
>
> Sometimes, I will have 3 CPUS for the remaining Performer code.
> Sometimes 1, or 2.
>
> I will likely add the lines: pfMultiprocess( (int) atoi( argv[2] ));
> or something to choose how many CPU's will run the viz part.
>
> Regardless...
>
>
> I want to ensure that the Octane's load balancing system
> does not USE a designated CPU for anything else except what I say.
>
> I understand that Performer will do internal sproc's, but I do not
> want some sort of sproc collision?
>
> Could someone advise me?
>
This is possible but I think you need to fork your process.
You can make performer & the os run on the other processor.
look at the manual page for sysmp, and pfMultiprocess.
Whether this is best for your intended application is a more
complex question.
Cheers,Angus.
=======================================================================
List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
Submissions: info-performer++at++sgi.com
Admin. requests: info-performer-request++at++sgi.com
This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:55:37 PDT