“It runs quite slowly, (486-levels of performance on a Ryzen 5000 series according to this discord channel)”<p>I’m sure there’s a joke about that being a huge leap in performance for Windows on IA-64 over the past 23 years waiting to be made from this.
I have a funny story about a windows IA-64 box.<p>I was working for a large bank and it was all windows, including production. We used to run WebSphere Application Server on Windows. I was looking for a dev server to run unit tests on, including integration tests which required an actual WebSphere instance. The infrastructure team said they had “a box” going spare and it turned out to be IA64 on Windows.<p>If my memory serves me correctly WebSphere only ran on windows for IA-64 up to 6 and we were running on 7.<p>I had to do a bit of hacking but I did manage to get it working using the dlls from the 6 version. It was fine for running integration tests and a pretty fast box considering.
Am I right to guess that neither your dev nor prod machines ran IA-64? If so that's not ideal, but beggars can't be choosers & a spare box from the infra team available right now is better than getting a box built to meet your exact specs available after the usual multi-quarter internal lead time.<p>Superficially it sounds a little crazy, but it's probably a lot less crazy than far more mainstream antipatterns (e.g. 'lets have our CI download all the dependencies from npm over the internet each time the build runs')!<p>Did running the unit tests on IA-64 ever flush out genuine issues that were 'working by accident' on x86?
This is much harder problem than most CPU emulators as IA-64 isn't really just another ISA. EPIC most significantly allows the RE which seems like the main implementation challenge. Does the emulator model the RSE or are there shortcuts for Windows compatibility? Also, which Windows model is booting?
What's even crazier is that someone vibe-coded ia64 emulation support for QEMU: <a href="https://github.com/syunnPC/qemu-system-ia64" rel="nofollow">https://github.com/syunnPC/qemu-system-ia64</a>
It's interesting to see how LLMs have definitely become a force-multiplier to motivate people into doing things they wouldn't otherwise have the time and effort to.
It really depends on the end goal. For personal tools that one uses, LLMs are extremely useful. But publicly used software doesn't only need to be written - it also needs to be maintained. And considering that it's extremely easy to implement features that are not used, vibe coded software tends to be, in best case, a mixed bag, and in worst (I believe typical) case, quickly abandoned.<p>Vibe coded software is the modern equivalent of the shovelware of the 90s.
I have been pairing with Claude Opus and it’s quite impressive. I have explored a number of possible changes to things like VTE and the Hercules mainframe emulator.
Sweet. What changes to Hercules have you been considering? I have had a long running (and maintained!) MVS instance in Hercules for quite a few years now, just for fun.
I want a telnet port connecting directly to the Hercules console when it runs headless, as that is the way it ends up running in Docker. The Hercules console does a lot of heavy lifting that could be implemented at the terminal (as even Windows now has a proper terminal). It went as far as allowing me to connect and see the console transcript, which is pretty already.<p>Another thing I want that I haven't figured out is to print to my network printers - they all do lpr and ipp, but Hercules direct to socket approach didn't work for me and I need to do more research on that. Ideally, the line in the config could be a pipe command where I could turn the page into PostScript to be netcat it to the printer. or massage it through a converter that took in an IBM line printer EBCDIC stream and spat out ASCII for a "normal" printer.
Would be amazing to implement a JIT in hercules (would make it 10x faster potentially as fast as z/PDT which implements a JIT); good timing as IBM is retiring z/PDT!
In this domain and others like it especially!<p>It's bone crushingly dry to try and figure this kind of shit out yourself, can do everything right according to every available reference and code comment only to get compiler and linker errors nobody has ever seen or posted about. Weeks and weeks of smashing your face against a wall until it gives. Now anyone can get twice as far in an evening. And that fuckin rules<p>Hard to not get a little hyperbolic about it... but I can't wait for everyone to exhaust their meme projects/ports and models to get just a bit better. Feels like we're about to have something of a golden age when everyone starts really making the stuff they've always wanted.
Open Source and LLMs seem to be complementary technologies that have resulted in an absolute surge of productivity multipliers.
Recently thanks to Modern Vintage Gamer on youtube, there has been a push to see if you could get Doom to run on the NeoGeo. Because of its very unique hardware (no framebuffer) it is a very unqiue and tough task.<p>And yet, some folks have come to the battle and have ended up extensively using LLM's to code it. It is wild to see that these things can target such an obscure platform and get some decent results in a very short amount of time.<p><a href="https://www.youtube.com/watch?v=WPxhuKTltsk" rel="nofollow">https://www.youtube.com/watch?v=WPxhuKTltsk</a><p>This is something that doesn't have any real economic value but many are more than happy to see happen.
Well, that's one vibe coded backburner'd project I can mark off my list...though maybe it would still be helpful so I'll link it here: <a href="https://github.com/ChickenParts/qemu-ia64" rel="nofollow">https://github.com/ChickenParts/qemu-ia64</a><p>It booted Linux fine, was working on booting IPF EFI firmware when I got distracted by life and other projects.
I wish this could make it to qemu's main branch; always fun to preserve new systems. I wonder if it runs openvms/ia64 too!
The Itanic was built specifically by HP to sink Fujitsu, hitachi, nec, unisys and sgi. So in that sense it was a success.
This was my take on it: <a href="https://honeypot.net/2021/07/29/the-itanic-has.html" rel="nofollow">https://honeypot.net/2021/07/29/the-itanic-has.html</a><p>Key relevant quote:<p>> In 1994, Intel and HP looked around and saw a wide variety of successful server CPU architectures like Alpha, MIPS, SPARC, and POWER. This annoyed them and they decided to make a new CPU that no one would want to use.
True. But it’s a technological representation of all that’s wrong with the industry.
When it comes to Itanium all I can think of is how I wish I could have an Alpha. And how no one should care about Itanium.<p>It’s the product of companies bent on doing all the wrong things.
Wasn't there a problem with Alpha, that it had too weak memory model or something? Think of atomic instructions with multi CPU system. Or do I remember something wrong?
It took longer than necessary, but in what ways do you think an Intel Core-derived chip is different from what an “Intel Alpha” would have been?<p>Taking for granted that hardware backcompat (Itanium had this, too!) was a starting requirement…
Alpha was great but that wasn't enough against the convenience of just running an x86 box. It didn't find a niche quickly enough. ARM survived because they were low power. POWER survived because IBM is one big niche. MIPS died and reincarnated into RISC-V. I have no idea where Alpha would have gone had it not been dropped.
Neat I did this on real hardware twenty plus years ago. Also tried Debian, iirc. My memory is that the workstation perf was decent but the thing was loud and used a lot of power. x86 emulation was slow. The nick, Itanic was mostly deserved.
The ia64 more complex compiler ecosystem made it difficult or impossible to port performant programs to the platform. Amd64 allowed people to keep building and running most programs with little understanding of what was happening in the architectural layers.<p>Even the 800lb guerilla Intel had to acknowledge amd64 was the next step, or it could end up a niche use chip like PowerPC.<p>The moral of the story is usability matters with consumer chip architecture. =3
It would make sense to implement it in QEMU instead. There was some previous work in the past, don't have a link right now to the original patchseries, but here is the repository[1]. In theory, it could be adapted to the modern QEMU code infrastructure and APIs and be a good starting point. Back in the past I started[2] doing that but quickly dropped because had no time to finish.<p>EDIT: It looks like it might be this one: <a href="https://github.com/syunnPC/qemu-system-ia64" rel="nofollow">https://github.com/syunnPC/qemu-system-ia64</a><p>[1] <a href="https://github.com/pvaibhav/qemu-ia64" rel="nofollow">https://github.com/pvaibhav/qemu-ia64</a><p>[2] <a href="https://github.com/XVilka/qemu-ia64/branches/all" rel="nofollow">https://github.com/XVilka/qemu-ia64/branches/all</a>
HP-UX support might make a compelling retirement project for someone.
C and C++ compilers weren't great, but that HP-UX Vault was a great experience, before anyone knew what the word containers in computing world means.
For sure, I'm glad we have those emulators, real hardware is hard to find or expensive or faulty. Having emulators helps a lot.
OpenVMS ran on the Itanium also; wonder how far it could get in booting?