I hope that Synopsys isn't just blowing smoke and will deliver multi-threaded applications in 2008. I'm no software engineer, but I thought it would be pretty difficult to retrofit multi-threading in these gargantuan EDA products, some of which have been around for many years.
We really need multi-threaded applications. Most servers have multiple CPUs with multiple cores each, yet are limited by memory as to how many EDA processes can run at a time. Often, you can only run one job because you need all the memory on the server to synthesize or place & route that design. Multi-threading should deliver greatly accelerated performance as those other idle cores contribute to the job at hand.
Some of the terminology gets confusing. In this article, "multi-threaded" and "multicore" are seemingly interchangeable. And then there is "distributed processing". I think of multicore as describing the hardware (CPU), and multi-threaded as describing the software architecture that includes shared memory access. And "distributed" means running on different physical servers, with separate memory models. Do I got that right?