Re: Online 7.x on IBM uni-processor
Posted in 1997
David Williams wrote: > > In article <340f0486.1271899725@news.2alpha.com>, Doug Bowman > <dougb@etcscan.com> writes > >Bill & David, > > > >What about the SINGLE_CPU_VP parameter in the onconfig file? I was > >told you should also set this to a 1 on a single CPU machine to > reduce > >the number of mutex calls. > > > Correct but there is still some overhead on 7.x engines since > internally online must check this parameter each time before > deciding not to call the mutex. > > > >On 3 Sep 1997 10:43:24 -0400, ennis@ssax.com (Bill Ennis) wrote: > >}Informix version 7 and later is multi-threaded; whch means that it > >}can take advantage of multiprocessing. > >} > >}If you only have one processor you do not want to use the > >multiprocessing > >}capabilities. There is overhead involved with multi-threading an > >operation > >}since the threads will need to communicate with each other in order > >to get > >}the job done. > >} > >}Informix recommends that you not use multi-processor mode until > >}you have a machine that has at least 4 processors. > >} > I have not heard the 4 CPUs is the limit. I thought > MULTIPROCESSOR should be set to 1 i.e. Y when you have >1 CPU. The general recommendation is to leave one CPU for 'other' tasks. On a 2 CPU box (I haven't seen any 3 CPU ones :) this leaves you with one CPU, so switching off the CPU VP locking will reduce the overhead. This is where the recommendation came from. Of course this also refers to a single server. If you are setting up a database server, then running 2 CPU VPs on a 2 CPU box will probably give you better performance than one, if a) you use PDQ, and b) you fragment tables. > After all that it what multiprocessor means, more than one cpu > and the Online Admin Guide Volume 1 Page 38-41 says > > "MULTIPROCESSOR specifies whether Online performs locking in a > manner that is suitable for a single processor computer or a > multiprocessor computer". > > I assume the differnce it that on a multiprocessor computer > CPU cache flushing is required to ensure all CPUS maintain a > consistent view of memory. Sometimes this cache flushing must be > done explictly in software and I thought that this is what the > MULTIPROCESSOR parameter is used for. I think it's to do with locking queues if you're not the only process grabbing threads to run. Cheers, -- Mark. +----------------------------------------------------------+-----------+ |Mark D. Stock - Informix SA http://www.informix.com |//////// /| |mailto:mdstock@informix.com FAQ http://www.iiug.org |///// / //| | +-----------------------------------+//// / ///| | Tel: +27 11 807 0313 |If it's slow, the users complain. |/// / ////| | Fax: +27 11 807 2594 |If it's fast, the users keep quiet.|// / /////| |Cell: +27 83 250 2325 |Therefore, "No news: travels fast"!|/ ////////| +----------------------+-----------------------------------+-----------+