>
>On 2001.01.05 Dominik Kubla wrote:
>> On Fri, Jan 05, 2001 at 10:18:46AM +0100, J . A . Magallon wrote:
>> >
>> > Silly question, but have you realized that you don't have to enable
>> > SMP in kernel to do multithreading ?
>> >
>>
>> That depends on your definition: If you really want to run multiple
>> threads simultaneously (as opposed to concurrent i guess) i imagine
>> you will either need more than one CPU or one of those new beasties
>> which support multiple threads in parallel on their various execution
>> units...
>>
>
>Nope. You can run multiple threads "simultaneously" on an uniprocessor,
>so simultaneous as the rest of the processes the cpu is running.
>Of course the efficiency of multi-threading drops on an uni-processor
>if your threads only do hard math work and no IO, but a thread can
>be crunchin numbers at the same time one other is waiting for IO even
>on a one cpu box. Think on an app that does read-process-write in loop.
>Two parallel threads on an uniprocessor can overlap IO and process
>and be more efficient than a non-threaded version.
Uh, I guess it is partially a matter of interpretation, but IMHO you
cannot have concurrent processing on a uni-processor (one instruction
stream). One thread at a time will be executing (ie. active on the processor),
and only one.
You can however easily do multi-processing/multi-threading on a uni-
processor.
regards,
Per Jessen, Principal Engineer, ENIDAN Technologies
http://www.enidan.com - home of the J1 serial console.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/