Quote:
Originally Posted by Mrs Beanbag
I work on apps all the time that have been written without any awareness of multi-core, they still work fine on my dual-core PC. A single app still runs single-threaded, it need worry about other cores no more than it need worry about other tasks or processes. The app won't be any faster if i don't rework it to use multiple threads, but it still runs.
|
Of course it
runs, because the OS won't allow you to write something that doesn't.
Your program is isolated in its own space and has no access to other programs space, let alone system structs.
(Hey, wait. This is exactly what i told about when writing about sandboxing the apps...)
Quote:
Originally Posted by Mrs Beanbag
Something can always go wrong, no matter what you do, it's no reason never to do anything.
|
Sure but when seeing a wall it's better not to run into it.
Quote:
Originally Posted by Mrs Beanbag
Do we NEED it? Do we NEED an enhanced 68k? Do we need an Amiga at all?
|
We *do* need an enhanced 68k (or something having the same coding flexibility). At least I do.
Quote:
Originally Posted by Mrs Beanbag
Multicore exists because, single-thread instruction-level parallelism limit was reached, Gigahertz limit was reached, demand for faster processing didn't stop,
|
Exactly - but ask yourself the question of why multicore didn't appear
before the limits were reached...
Quote:
Originally Posted by Mrs Beanbag
but (thankfully) modern workloads are increasingly multi-threaded by nature.
|
Do we execute "modern workloads" on an Amiga ?
What are they anyway ?
Quote:
Originally Posted by Mrs Beanbag
It doesn't just increase specs on paper.
|
This is what they wanted you to believe. But how to know, without any reference to compare with ? Do we have single core, single threaded multi-gigahertz cpus running on operating systems not smp aware ?
Quote:
Originally Posted by Mrs Beanbag
It also actually works.
|
Yes but this has a cost.
Quote:
Originally Posted by Mrs Beanbag
Although, before trying multi-core, i'd suggest hyperthreading, which is more-or-less equivalent to pre-emptive multitasking, with task switching every CPU cycle, so should create fewer problems (?) both for the OS and user programs.
|
Perhaps but neither the OS nor user programs actually have a use for this.
I even have some code that would break if task priorities were broken.