Subject: Re: Lisp io performance. From: Erik Naggum <email@example.com> Date: 1999/01/21 Newsgroups: comp.lang.lisp Message-ID: <firstname.lastname@example.org> * Robert Monfera <email@example.com> | One reason for using OS level threads is to allow multiprocessing. obviously, Allegro CL has multiprocessing within the same Unix process. | Probably there is an alternative way of doing that without having to | create processes? a call to MAKE-PROCESS does indeed create a process, but not in the Unix sense with a separate process idea and memory and all that. | Also, could you tell what major problems you see with OS level threads so | I can avoid them (I am using LWW) and how you would design applications | that scale well on multiprocessor machines. the problem with scaling on multiprocessor machines is not the OS-thread or not OS-thread issue, but how Lisp wants a single address space and you are changing the semantics of the language as a whole when you make each thread a separate address space or almost a separate address space. BTW, I have struggled with cooperating processes on two machines and I really thought I could cut corners relative to the full theory, but it turns out I can't, so I had to settle for one master and multiple slaves. whether the slaves are Lisp processes in the same Unix process, Lisp processes in separate Unix processes on the same machine, or Lisp processes in Unix process elsewhere is not an issue: the interaction between them is based on a low-bandwidth exchange of s-expressions. where I have used run-reasons in the Allegro CL multiprocessing model, I send forms for evaluations to the slaves. | I am interested in others' experiences with multithreading or | multiprocessing with LWW or ACL for B.G.R. well, it would be nice if we had a journal in which to publish such things, instead of _just_ the newsgroup and the Web. perhaps at the next Lisp Users and Vendors or Lisp Users Group Meeting. #:Erik -- SIGTHTBABW: a signal sent from Unix to its programmers at random intervals to make them remember that There Has To Be A Better Way.