Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

When will compilers be good enough to take another swing at VLIW?


Now, but temporally rather than spatially.

A VLIW has a lot of functional units that are used simultaneously.* Modern processors (out of order, superscalar, using speculative execution, pick your techniques and buzzwords) allow these units to be used simultaneously and dynamically depending on the instruction mix. With VLIW some instruction units won’t be used and so won’t contribute to performance.

The compilers can give hints to the execution CPU but it also decides what to do when. With VLIW (EPIC is probably a better name in this regard) you have to guess right up front, without knowing what the data will be.

* So does SIMD, but in VLIW you don’t have to have a single instruction.


VLIW is pretty well represented in the TOP500 supercomputers and in various other performance niches.

What isn't is not so much VLIW as EPIC - the explicit parallelism of Itanium, which among others didn't really support out of order or branch prediction in ways other than compiler code generator.

High levels of SMT (sometimes with just a barrel execution models) are used in GPUs to smooth out the performance characteristics involved, from my understanding.


Approximately never for non-HPC code.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: