Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
A 300Mhz ARM is going to be a lot slower than a 300Mhz Pentium II or AMD K7 (and even those will have different performance). There's also going to be the factor or RAM(/cache) performance, since even if the rest of the variables fit into registers "Optimizer[ThreadAmount]" will almost certainly use RAM.
It seems that this pseudo-C code amounts to less than 20 x86 instructions with 2 probable RAM fetches. None of those simple instructions will take more than 5 cycles on a Pentium II and there's nothing likely to trip up instruction prefetch. That seems to be congruent with your 300ns estimate; assuming both RAM fetches are cache-misses and you have PC100 SDRAM, that's another ~20ns. So, yes, well under 1ms on a typical x86 CPU of 300Mhz.
@mallard : Hell yeah!
That is actually good since there needs to be space for priority based tasks (group of threads).
Is 200hZ for this scheduler realiable enough?