*BSD News Article 52170


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!simtel!news.kei.com!news.mathworks.com!tank.news.pipex.net!pipex!howland.reston.ans.net!math.ohio-state.edu!magnus.acs.ohio-state.edu!lerc.nasa.gov!purdue!news.bu.edu!acs4.bu.edu!mi
From: mi@bu.edu (Mikhail Teterin)
Newsgroups: comp.sys.ibm.pc.hardware.chips,comp.sys.ibm.pc.hardware.systems,comp.os.linux.hardware,comp.unix.bsd.freebsd.misc
Subject: Re: Dual Pentium MotherBoard.
Date: 4 Oct 1995 15:16:55 GMT
Organization: Boston University
Lines: 28
Message-ID: <44u8h7$3n9@news.bu.edu>
References: <44735j$7qo@kappa.usc.edu> <DFHG2v.7Mw@ritz.mordor.com> <MICHAELV.95Oct2203731@MindBender.HeadCandy.com>
NNTP-Posting-Host: acs4.bu.edu
X-Newsreader: TIN [version 1.2 PL2]
Xref: euryale.cc.adfa.oz.au comp.sys.ibm.pc.hardware.chips:34467 comp.sys.ibm.pc.hardware.systems:20472 comp.os.linux.hardware:17243 comp.unix.bsd.freebsd.misc:6810

Some time ago (03 Oct 1995 03:37:23 GMT) honorable Michael L. VanLoon, 
residing at michaelv@MindBender.HeadCandy.com wrote:
|   Hmm. Programming question. Under Windows NT, on a multi-processor 
|   box, is it possible to run copies of an application on each processor?
|   Is is possible to specify which processor an application should run on?

|Yes.  Yes.

Correction. You can only specify _thread's_ affinity, not the _process'_.
It is possible to bind the primary thread of an application, but it remains
unclear if secondary threads will obey the limitation. If nothing said,
NT will run your application on all the processors, without trying to keep
it one (hence, it is loosing time on cache transfers).


|Yes.  If your process is given a set of processors to run on (a
|process affinity mask or something like that), you can specify for each
|thread or spawned process a subset of those processors you want it to
|run on, but you can't specify more than you've been given.  For
|example, your process is given a mask that lets it run on processor
|1 and 2, in a four-processor system.  It can't twiddle its mask to let
|it run on processor 3, but it could limit a spawned thread or process
|such that it could ONLY run on processor 1 or 2.

Just curious, how can user/programmer specify the _process'_ affinity?
up to NT 3.51 there is only SetThreadAffinityMask()... Thanks!

	-mi