From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id OAA04903; Sun, 15 Jul 2001 14:45:17 +0200 (MET DST) Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id OAA02871 for ; Sun, 15 Jul 2001 14:45:16 +0200 (MET DST) Received: from smtp1.xs4all.nl (smtp1.xs4all.nl [194.109.127.131]) by nez-perce.inria.fr (8.11.1/8.10.0) with ESMTP id f6FCjGL17726 for ; Sun, 15 Jul 2001 14:45:16 +0200 (MET DST) Received: from beertje.william.bogus (williamc.xs4all.nl [213.84.56.92]) by smtp1.xs4all.nl (8.9.3/8.9.3) with ESMTP id OAA00273; Sun, 15 Jul 2001 14:45:14 +0200 (CEST) Received: (from williamc@localhost) by beertje.william.bogus (8.11.2/8.11.2/SuSE Linux 8.11.1-0.5) id f6FCFsW01968; Sun, 15 Jul 2001 14:15:54 +0200 X-Authentication-Warning: beertje.william.bogus: williamc set sender to williamc@paneris.org using -f From: William Chesters MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <15185.35174.636464.823634@beertje.william.bogus> Date: Sun, 15 Jul 2001 14:15:34 +0200 (CEST) To: Caml list Subject: Re: [Caml-list] Will Ocaml use a 4-way SMP box without splitting the program into separate processes? In-Reply-To: <20010715133250.B4478@pauillac.inria.fr> References: <20010715133250.B4478@pauillac.inria.fr> X-Mailer: VM 6.75 under 21.1 (patch 14) "Cuyahoga Valley" XEmacs Lucid Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk Xavier Leroy writes: > > Doesn't this mean that a process can never use more than one processor? > > Yes, if the process is entirely composed of Caml code. Oh. I didn't realise that. > Long-running C primitives release the lock, meaning that your > 4-processor machine can have 1 processor running Caml code and 3 > executing C primitives, e.g. database queries. In practice there are always compelling reasons to one of the standard SQL DB servers, so the actual query processing isn't done in the servlet process anyway. (The reasons are things like: customers want their data stored in a "proper" database which they trust; they want to be able to use Excel with it; etc.) > Perhaps. I don't know how important shared-memory multiprocessing is > important for large Web applications. Centralized databases can > certainly benefit from large SMP machines, but it was my impression > that everything else is equally well done on multiple, inexpensive > single-processor PCs. (Cf. Google vs. Altavista.) Yes. The one point I would make is that marshalling data to and from an SQL backend, and getting it into a form which is malleable enough to support complex application logic in a clean way (e.g. an object DB like Melati's), is expensive. Cacheing data within the servlet process is an effective way of amortising these costs. And it's much easier to implement cacheing inside one multithreaded process than between several processes, potentially on different machines. Also for a small-scale operation, TCO of a single SMP machine is lower than that of multiple cheap PCs. > At any rate, I believe a single-processor PC can handle a fairly high > Web traffic, if well programmed. Of course, if you're amazon.com or > google.com that will not suffice, but it should be enough for > joesbusiness.com :-) Very true. It is really astonishing what you can get away with. ------------------- Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr