Re: [Simh] Alpha simulator performance
On 4/20/12 9:41 PM, "Sergey Oboguev" wrote: >> On Fri, Apr 20, 2012 at 09:01:11PM -0400, Dan Gahlinger wrote: > >> Given that Cutler was the core architect on both, that isn't exactly >>surprising. >> > >As a minor historical correction: whatever Cutler's merits are, he was >not "the" >core architect of VMS, as common legend has it. >As evidenced by the headers in VMS sources, he was just one of the key >architects and developers for the kernel, let alone the whole system. >Even at early VAX architecture design state there were three key people >on the >software side (Hustvedt, Lippman and Cutler) and when it came down to the >actual >VMS design and implementation it naturally became even more diluted, with >different people covering different major areas. My OS professor, Hank Levy, was one of those folks (architects of VMS). It made for an interesting class! -- Ian ___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh
Re: [Simh] Alpha simulator performance
On 4/20/12 8:37 PM, "Sergey Oboguev" wrote: >> I would say Unix (and its derivatives) and VMS are Operating Systems. > >> Windows is an Application. Takes VMware to run it. > >Takes SIMH to run VMS. Really? My VAX 4000-300 not only runs VMS quite well, but it keeps my workshop warm. :-) -- Ian ___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh
Re: [Simh] Alpha simulator performance
On Fri, Apr 20, 2012 at 6:47 PM, Sergey Oboguev wrote: >> While we're in "wish list" mode, I'd like to see SimH emulate Alpha or >> Itanium, >> >>so I could use it to run newer versions of OpenVMS than 7.3. There are free >>versions of commercial Alpha emulators available, but they only run on Windows >>(BLEAH) and their performance is intentionally limited, presumably to get >>people SRI/Stromasys has Charon-AXP It runs under Linux, IIRC, they've even a VMWare appliance, but it isn't much more than a Linux + Charon build. They've a non-commercial version here: http://www.stromasys.ch/virtualization-solutions/virtual-alpha-on-windows/download-charon-axp-nce/ Unfortunately, each build has built in expiration dates, and run limit timers. So its really only good for experimental purposes, since its my impression the commercial version is very expensive. It did run AXP OpenVMS 8.4 when I last dinked with it. (albeit sometime ago.) > people who extoll VMS and simultaneously "bleah" about "Windoze", which after > all at its foundations is to a significant extent a clean and neat > reimplementation of Not to beat the dead horse too much.(No! Really! I saw it twitch!) IMO, its not so much the kernel, its the administration tools. You can admin a VMS (and Linux) system from a command line.Windows, not so much.(Though it is my understanding this is getting better with recent Windows releases via PowerShell) David ___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh
Re: [Simh] Alpha simulator performance
Don't forget VMS mailboxes... I've used them for inter-process and inter-system communication on both VMS and Windows. A very elegant approach on both - although as I remember, somewhat more elegantly implemented on the VAX. Villy -Original Message- From: simh-boun...@trailing-edge.com [mailto:simh-boun...@trailing-edge.com] On Behalf Of Alexander Schreiber Sent: April 21, 2012 01:58 To: Dan Gahlinger Cc: simh@trailing-edge.com Subject: Re: [Simh] Alpha simulator performance On Fri, Apr 20, 2012 at 09:01:11PM -0400, Dan Gahlinger wrote: > > NT is not VMS or a reimplementation of it. Well, it isn't straight VMS - but definitely based on VMS. I remember being in university and working my way through a VMS internals book (out of interest) and a short while later going through a lecture about modern OS internals which was based on Windows NT (IIRC 3.51 or so). Woah, that certainly was full of dj vu moments "wait, this is just like in VMS, but with some of the serial numbers filed off". Given that Cutler was the core architect on both, that isn't exactly surprising. Even though some of the later silly ideas (putting the entire GUI subsystem into kernel mode to speed up graphics) were not his fault. Kind regards, Alex. -- "Opportunity is missed by most people because it is dressed in overalls and looks like work." -- Thomas A. Edison ___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh ___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh
Re: [Simh] Alpha simulator performance
I wouldn't attempt to compare any version of NT or later Windows OSes with VMS since my knowledge of Windows is lacking. But I have explored a large part of the Windows API and it does seem like a big mish-mash - very broad, but not as clean as it could be. But it may be unrealistic to expect it to be cleaner given the circumstances of its birth and evolution. My memories of VMS are nothing but positive. I read all the manuals and various API references cover to cover in my first couple of years and then eventually moved on to kernel mode programming. In my opinion, everything I ran into was carefully and beautifully crafted. Some of the coolest things I ever wrote were created in those years. I loved the MACRO 32 language, VAX instruction set, and then the Alpha. With that OS, anything I wrote could be reliable and clean. The environment and tools available made me feel like a master engineer. The base was elegant so you could create elegance on top. Today so much of what people do is not elegant, myself included. I feel like I frequently have to fight and kludge to create something reliable and clean. Maybe it is because VMS was smaller, you could know almost everything about it, so a great design was clearer. Maybe because it was designed by a like-minded group of people, once you understood the philosophy of the architecture, you could guess how borderline cases would be handled, and you could feel confident about the reliability and predictability of your own code. I miss those days, even though I realize it may be impossible to every see something like it again, due to the fact that any modern development environment is going to be a mish-mash of tools created by different companies. In my current job, our system interfaces with 30+ other diverse systems with home grown APIs, message queue APIs, TCP, DB tables, etc. Too many choices makes for a bizarre soup. -Eric Schmucker ___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh
Re: [Simh] Alpha simulator performance
> If you are concerned about performance, it is unlikely that SIMH > implementation > of Alpha (which apparently is in works, but hard to guess when it might become > available) will "ever" match the performance of free versions of commercial > emulators. The latter do JIT binary compilation, whereas SIMH performs > interpretation of instruction stream and is unlikely to have JIT for the > foreseeable future if ever at all. Thanks, Sergey, for your excellent and informative reply! I'm not so much concerned about performance as about the whole principle of it. SimH is free-as-in-libre software and it runs on free-as-in-libre platforms. So, if it supported Alpha I would prefer it over throttled-down commercial emulators running on Windows just for the convenience of not having to run Windows, even if they ran circles around SimH. As it is, I find myself running SimH to get my VMS fix, anyway, instead of firing up the RX2600 which of course runs much faster. Especially after I figured out how to use the VT terminal with SimH. Not dissing the commercial emulators - they are fine and nice to have available; I just find them inconvenient to use. I'm beginning to regret bringing up my wish-list item at all :-) ___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh
Re: [Simh] Alpha simulator performance
> On Fri, Apr 20, 2012 at 09:01:11PM -0400, Dan Gahlinger wrote: > Given that Cutler was the core architect on both, that isn't exactly >surprising. > As a minor historical correction: whatever Cutler's merits are, he was not "the" core architect of VMS, as common legend has it. As evidenced by the headers in VMS sources, he was just one of the key architects and developers for the kernel, let alone the whole system. Even at early VAX architecture design state there were three key people on the software side (Hustvedt, Lippman and Cutler) and when it came down to the actual VMS design and implementation it naturally became even more diluted, with different people covering different major areas. > Even though some of the later silly ideas (putting the entire GUI subsystem >into kernel mode to speed up graphics) were not his fault. Silly -- from whose prospective? Apparently not from the prospective of paying customers. If GDI server goes down and everything else survives, from average customer's prospective the system is as good as dead (all GUI applications are killed and user session is destroyed, and that's what matters on a PC), and the next step is restart. So what would be the point of sacrificing performance (at the time when it still mattered) for virtually nothing? As Torvalds once colorfully commented on a distinct but somewhat related issue: "message passing as the fundamental operation of the OS is just an exercise in computer science masturbation. It may feel good, but you don't actually get anything DONE. Nobody has ever shown that it made sense in the real world". I might also mention that I had a coworker who previously spent 6 years at OSF working on virtual memory subsystem and similar stuff, and when I inquired him about his experiences, his very second comment was literally: "god, was it slow!". ___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh
Re: [Simh] Alpha simulator performance
> I would say Unix (and its derivatives) and VMS are Operating Systems. > Windows is an Application. Takes VMware to run it. Takes SIMH to run VMS. ___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh
Re: [Simh] Alpha simulator performance
I would say Unix (and its derivatives) and VMS are Operating Systems. Windows is an Application. Takes VMware to run it. Eric On Apr 20, 2012, at 9:00 PM, Alexander Schreiber wrote: > On Fri, Apr 20, 2012 at 09:01:11PM -0400, Dan Gahlinger wrote: >> >> NT is not VMS or a reimplementation of it. > > Well, it isn't straight VMS - but definitely based on VMS. I remember > being in university and working my way through a VMS internals book (out > of interest) and a short while later going through a lecture about modern > OS internals which was based on Windows NT (IIRC 3.51 or so). Woah, that > certainly was full of déjà vu moments "wait, this is just like in VMS, > but with some of the serial numbers filed off". > > Given that Cutler was the core architect on both, that isn't exactly > surprising. Even though some of the later silly ideas (putting the entire > GUI subsystem into kernel mode to speed up graphics) were not his fault. > > Kind regards, >Alex. > -- > "Opportunity is missed by most people because it is dressed in overalls and > looks like work." -- Thomas A. Edison > ___ > Simh mailing list > Simh@trailing-edge.com > http://mailman.trailing-edge.com/mailman/listinfo/simh ___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh
Re: [Simh] Alpha simulator performance
On Fri, Apr 20, 2012 at 09:01:11PM -0400, Dan Gahlinger wrote: > > NT is not VMS or a reimplementation of it. Well, it isn't straight VMS - but definitely based on VMS. I remember being in university and working my way through a VMS internals book (out of interest) and a short while later going through a lecture about modern OS internals which was based on Windows NT (IIRC 3.51 or so). Woah, that certainly was full of déjà vu moments "wait, this is just like in VMS, but with some of the serial numbers filed off". Given that Cutler was the core architect on both, that isn't exactly surprising. Even though some of the later silly ideas (putting the entire GUI subsystem into kernel mode to speed up graphics) were not his fault. Kind regards, Alex. -- "Opportunity is missed by most people because it is dressed in overalls and looks like work." -- Thomas A. Edison ___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh
Re: [Simh] Alpha simulator performance
> NT is not VMS or a reimplementation of it. Let's look at some basics in internals. I'd rather just quote someone here, to save time typing: === quote begin === The scheduler. (process scheduler in VMS, thread scheduler in NT) 32 scheduling priorities, divided into the "real-time" (16-31) and "variable" (0-15) priority ranges. identical preemption at ready by higher-priority threads; identical quantum and priority boost implementations; identical CPU starvation avoidance mechanism to get out of priority inversion situations; a null thread for each CPU; etc., etc. Memory management. 0-7FFF is per-process, mostly user-mode-accessible only; 8000- is systemwide, mostly kernel-accessible only. Functionally identical implementations of paging vs. swapping. I/O. I could write a book, but briefly, IRPs are IRPs, UCBs are "device objects", CRBs are "controller objects", ADPs are "adapter objects", FDT routines are "dispatch routines", EXE$QIODRVPKT is IoStartPacket, StartIO routines are StartIO routines, fork routines are DPC routines, ASTs are APCs... etc., etc., etc., etc., etc. Interrupt handling. 32 levels of interrupts (some simulated but this is nevertheless the way the code is written). IPLs on VMS, IRQLs on NT. In order: Passive level, APC (AST) Level, Dispatch (fork) level, then the IO hardware interrupts, then some "hardware maintenance" functions like the hardware timer, IPI, power fail notification, and HIGH_LEVEL to block all interrupts. === quote end === Could go on, but probably enough to give an initial idea. Native API and subsystems came from Mica, I might just add. In effect you could say Mica turned out to be a dry run for Windows architectural design. As for crashes, after installing XP SP3, my old computer at work stayed up (unrebooted) for about 2 years and was restarted only because IT pushed hotfixes that required restart. I also do not remember having any crashes in XP or later era on my home computer that were not related to 3rd party drivers (and those were largely gone by XP time too). Earlier versions of NT may have been less stable, but they had to deal with diversity of supported hardware and magnitude of functionality far exceeding those early versions of VMS had to. As for single-user system, it is an era of client/server computing and personal computing. The era of timeshared computers is long gone. Nevertheless Windows does provide multiple logon sessions with remote desktops. > vms was elegant. thats something NT never had. Cannot agree. At user level, Windows is certainly more usable than VMS. At API level, likewise there is no even comparison in terms of elegance. This is not to say VMS APIs were bad at their time -- but they are APIs of their era.___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh
Re: [Simh] Alpha simulator performance
NT is not VMS or a reimplementation of it.i wouldnt even say there's vms code in there.there can't be, VMS was never that bad. NT crashed all over the place, it was unstable, it was horrifically bloatedand all sorts of other nasty things.on top of that it's really only a single-user system. you could have hundreds of users simultaneously on a vax750 and it wouldnt seem slow.a pair of clustered vax780s never seemed to break a sweat. maybe it's just perspective, maybe it's the client/server design,maybe it's what we did with it. vms was elegant. thats something NT never had. > Date: Fri, 20 Apr 2012 15:47:29 -0700 > From: obog...@yahoo.com > To: simh@trailing-edge.com > Subject: Re: [Simh] Alpha simulator performance > > > While we're in "wish list" mode, I'd like to see SimH emulate Alpha or > > Itanium, > > > >so I could use it to run newer versions of OpenVMS than 7.3. There are free > >versions of commercial Alpha emulators available, but they only run on > >Windows > >(BLEAH) and their performance is intentionally limited, presumably to get > >people > > > >to buy the full version. > > If you are concerned about performance, it is unlikely that SIMH > implementation > of Alpha (which apparently is in works, but hard to guess when it might > become > available) will "ever" match the performance of free versions of commercial > emulators. The latter do JIT binary compilation, whereas SIMH performs > interpretation of instruction stream and is unlikely to have JIT for the > foreseeable > > future if ever at all. > > FreeAXP performance may be throttled down compared to full Avanti, but it is > still very fast -- much, much faster than SIMH VAX alongside it. > > Also note that FreeAXP is about 3x faster when running on 64-bit version of > Windows compared to being executed on 32-bit Windows (just as can be expected > for the emulation of 64-bit processor). > > To give a rough idea, here were the results CHARON/SRI benchmark executed on > FreeAXP running on i7 2600, 3.40 GHz on 64-bit Windows: > > Test started [...] for a AlphaServer 400 4/166 CPU with VMS V8.3 > > Sequential test results: > > Whetstones Dhrystones VUPs > Run 0 81.7203735 144.5 > Run 1 80.3200222 144.5 > Run 2 79.0203735 144.0 > Run 3 80.3200222 145.0 > - > Average80.3 201978 144.5 > > Interleaved test results: > > Whetstones Dhrystones VUPs > Run 0 81.7200222 145.0 > Run 1 80.3203735 145.0 > Run 2 80.3203735 144.5 > Run 3 81.7200222 144.5 > - > Average81.0 201978 144.8 > > By the way of comparison, same test executed in native Windows x64 mode on > the > same machine (with SSE code generation disabled during compilation) produced > only 150 000 Dhrystones ;-), albeit was 150 times faster than virtual Alpha > on > Whetstones. > > As a side note, I personally was never quite able to understand the reasoning > of > > people who extoll VMS and simultaneously "bleah" about "Windoze", which after > all at its foundations is to a significant extent a clean and neat > reimplementation of > > VMS/Mica architecture at a new technological volution. > ___ > Simh mailing list > Simh@trailing-edge.com > http://mailman.trailing-edge.com/mailman/listinfo/simh ___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh
Re: [Simh] Alpha simulator performance
> While we're in "wish list" mode, I'd like to see SimH emulate Alpha or > Itanium, > >so I could use it to run newer versions of OpenVMS than 7.3. There are free >versions of commercial Alpha emulators available, but they only run on Windows >(BLEAH) and their performance is intentionally limited, presumably to get >people > >to buy the full version. If you are concerned about performance, it is unlikely that SIMH implementation of Alpha (which apparently is in works, but hard to guess when it might become available) will "ever" match the performance of free versions of commercial emulators. The latter do JIT binary compilation, whereas SIMH performs interpretation of instruction stream and is unlikely to have JIT for the foreseeable future if ever at all. FreeAXP performance may be throttled down compared to full Avanti, but it is still very fast -- much, much faster than SIMH VAX alongside it. Also note that FreeAXP is about 3x faster when running on 64-bit version of Windows compared to being executed on 32-bit Windows (just as can be expected for the emulation of 64-bit processor). To give a rough idea, here were the results CHARON/SRI benchmark executed on FreeAXP running on i7 2600, 3.40 GHz on 64-bit Windows: Test started [...] for a AlphaServer 400 4/166 CPU with VMS V8.3 Sequential test results: Whetstones Dhrystones VUPs Run 0 81.7203735 144.5 Run 1 80.3200222 144.5 Run 2 79.0203735 144.0 Run 3 80.3200222 145.0 - Average80.3 201978 144.5 Interleaved test results: Whetstones Dhrystones VUPs Run 0 81.7200222 145.0 Run 1 80.3203735 145.0 Run 2 80.3203735 144.5 Run 3 81.7200222 144.5 - Average81.0 201978 144.8 By the way of comparison, same test executed in native Windows x64 mode on the same machine (with SSE code generation disabled during compilation) produced only 150 000 Dhrystones ;-), albeit was 150 times faster than virtual Alpha on Whetstones. As a side note, I personally was never quite able to understand the reasoning of people who extoll VMS and simultaneously "bleah" about "Windoze", which after all at its foundations is to a significant extent a clean and neat reimplementation of VMS/Mica architecture at a new technological volution. ___ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh