Forum Replies Created
- AuthorPosts
- in reply to: Programmer oriented overview #922
The Microkernel -section had some garbage text left from editing, I replaced it with content and put in the links to the videos and forums.
- in reply to: Introduction to the Mill CPU Programming Model #877
I just read this post and watched few videos again.
The execution and load format are different in this architecture. Whenever a program wants to run something, it will push it to the specializer, which translates a load format into execution format that fits this machine.
So the load formatted code doesn’t contain details about the belt size or operation latencies. Which properties does the loadcode preserve compared to the execode?
How fast is the specializer in theory? It needs to schedule a graph of operations into shortest possible instruction sequence that can be executed by the machine, because every instruction counts unlike in OOE -machines. Each operation in the graph has a duration it takes and dependencies to other operations. There are logical end-points – the data stores and control flow branches. It sounds like the specializer needs to compute the critical path from the code, which is longest path problem and that can be computed in linear time. I’m just not sure what else it’d need to do, I’ve only thought about it for three days, not sure about what I’m looking at.
It also looks like the loops need to be vectorized by the compiler. Is it a hard thing to do? Sounds like something easy for tracing JIT compiler, hard for a traditional compiler.
If these are topics of the upcoming video lectures, I can wait for the videos. It’ll be interesting to follow it all. It may very well become an exciting new platform.
- This reply was modified 10 years, 7 months ago by cheery.
- in reply to: coroutines & greenlets in Mill #850
It would be interesting to hear how other things associated to higher order programming translate over. For instance JIT (code generation), garbage collection, or calls to native functions with arbitrary number of arguments (FFI).
One characteristic of greenlets have been that they’ve been proposed to be lightweight enough to allow thousands of them exist simultaneously. Even with hardware support, is that possible?
And what does the abbreviation NYF stand for? Is it an abbreviation of something in the first place? I didn’t find description for it.
- This reply was modified 10 years, 8 months ago by cheery.
- AuthorPosts