Itanium architecture
- Love4Boobies
- Member
- Posts: 2111
- Joined: Fri Mar 07, 2008 5:36 pm
- Location: Bucharest, Romania
Itanium architecture
Has anyone ever tried writing for the Itanium architecture? It's quite fascinating, I've started reading on it. Do you know of any good compilers for it (except for Intel who I bet has one).
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
[ Project UDI ]
Re: Itanium architecture
I don't know much about it, but I read somewhere that GCC supports it as a target (and as host?)
and even that it generates better code than Intel's compiler.
and even that it generates better code than Intel's compiler.
- Love4Boobies
- Member
- Posts: 2111
- Joined: Fri Mar 07, 2008 5:36 pm
- Location: Bucharest, Romania
Re: Itanium architecture
That would be no surpise -- it's the OS that needs to support the Itanium, not the compiler itself. I was only curious about the generated code.Hangin10 wrote:(and as host?)
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
[ Project UDI ]
- Love4Boobies
- Member
- Posts: 2111
- Joined: Fri Mar 07, 2008 5:36 pm
- Location: Bucharest, Romania
Re: Itanium architecture
Maybe Brendan will have something to say about this? (heh)
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
[ Project UDI ]
Re: Itanium architecture
Hi,
AFAIK Linux fully supports Itanium, and so does GCC and it's related tools (LD, OBJDUMP, etc), including support for EFI.
I looked into Itanium several years ago, and I don't think much has changed since. Unlike 80x86 CPUs, the instructions are meant to be scheduled by the compiler, and the CPU doesn't reschedule them. This means compiler optimization are very important, and CPU manufacturers can't easily change the behavior of the CPU (e.g. a performance improvement may mess up the timing that compilers expect, and give worse performance due to instruction scheduling differences).
IMHO for an OS developer there's 3 main problems:
Cheers,
Brendan
Sure..Love4Boobies wrote:Maybe Brendan will have something to say about this? (heh)
AFAIK Linux fully supports Itanium, and so does GCC and it's related tools (LD, OBJDUMP, etc), including support for EFI.
I looked into Itanium several years ago, and I don't think much has changed since. Unlike 80x86 CPUs, the instructions are meant to be scheduled by the compiler, and the CPU doesn't reschedule them. This means compiler optimization are very important, and CPU manufacturers can't easily change the behavior of the CPU (e.g. a performance improvement may mess up the timing that compilers expect, and give worse performance due to instruction scheduling differences).
IMHO for an OS developer there's 3 main problems:
- getting enough useful documentation (e.g. it's not like 80x86 where there's tutorials and examples everywhere)
- getting test machines. I couldn't find any emulator that will emulate an Itanium, except for one expensive/slow proprietory simulator that is mainly intended to simulate the electronics rather than emulate the instructions. Real Itanium machines are expensive, and you won't find old ones on eBay for $100. Also, for all OSs on any architecture you want a variety of test computers because some bugs just don't show up on some computers. I'd expect to pay over $10000 ($au) just for three test machines (but I wouldn't assume that 3 different computers is enough variety).
- getting people to use/test your OS. Currently, almost everyone who's using Itaniums are using them for high-end servers, and probably don't even want to upgrade the OS they're already using in case it costs them too much downtime. That means people willing to test your OS would be extremely rare, and when the OS is completely finished it'd need to be very reliable (and probably support heaps of fault tolerance and redundancy features) before existing Itanium users consider using your OS on their servers.
Cheers,
Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
Re: Itanium architecture
I think the emulator Brendan speeks of is SKI ([url]ski.sourceforge.net[/url]. But its of no real use for OS dev. Maybe you have a look at ARM or MIPS. The have both good emulators and hardware(at least ARM) available. And of course their different flavours are supported by GCC.
- Love4Boobies
- Member
- Posts: 2111
- Joined: Fri Mar 07, 2008 5:36 pm
- Location: Bucharest, Romania
Re: Itanium architecture
As far as MIPS goes, I am currently also studying the POWER architecture (somewhat).
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
[ Project UDI ]
Re: Itanium architecture
Then the authors of what you read are also quite unknowledgeable. It's common knowledge the Intel compilers are far superior to GCC.Hangin10 wrote:I don't know much about it, but I read somewhere that GCC (...) generates better code than Intel's compiler.
JAL
Re: Itanium architecture
Eerr... what do you mean to say? In a thread about dogs: "As far as cats go, I am currently also studying horses".Love4Boobies wrote:As far as MIPS goes, I am currently also studying the POWER architecture (somewhat).
JAL
Re: Itanium architecture
\begin{offtopic}
\end{offtopic}
It's a great associative chain .jal wrote:Love4Boobies wrote:
As far as MIPS goes, I am currently also studying the POWER architecture (somewhat).
Eerr... what do you mean to say? In a thread about dogs: "As far as cats go, I am currently also studying horses".
\end{offtopic}