Re: SixPacks mods for GCIC users

Dave McGuire <[email protected]> Thu, 04 Nov 2010 11:03:22 -0400
Newsgroups gmane.comp.emulators.hercules390.vm
Message-ID <[email protected]>
On 11/4/10 10:54 AM, Gregg Levine wrote:
>> Often I find fun in installing and testing Hercules on small
>> appliances, tiny computers, NAS and so on.
>>
>> Recently I bought a D-LINK DNS-323 for a bargain price (about
>> 75 Euros without HD) and I installed Hercules on it.
>>
>> Based on a 500 Mhz ARM processor it has a perfomance of 1-1.5 MIPS (more or less the same as a 4341-2 of 1980); this is acceptable to me as I like to have some wait time after issuing a command (it remembers me of good old times;-).
>>
>> So I decided to test GCIC in this environment, and I
>> was surprised by the time required to start BROWSE or
>> EDIT function; for example starting BROWSE of GEDIT ASSEMBLE
>> file (3742 lines) required about 65 seconds; the same for
>> starting EDIT.
>>
>> Even exiting from BROWSE OR EDIT required about 12 sec.
>>
>> The same functions in a VM/SP environment(using BROWSE and XEDIT)
>> give a 0.1-0.4 seconds response time.
>>
>> I noticed that starting BROWSE in GCIC has a path lentgh of about
>> 60M instructions, while the BROWSE of VM/SP has a 100k instructions
>> path length.
>>
>> Surprised by such a behaviour I looked into the code of GCIC,
>> and discoveved that the file to be BROWSED or EDITED
>> is read into memory by the same routine in GTABLE ASSEMBLE module;
>> for each line read is issued a GETMAIN to get an area of
>> 8 + LRECL length.
>>
>> I suspected that the  poor performances were related to all
>> these GETMAINs, so I tried a quick and dirty correction:
>> I acquired an unique area of 500k at the beginning of the routine
>> and modified the code to cope with this unique area.
>>
>> I got a response time of 3 sec (instead of 65) and exiting
>> from BROWSE or EDIT is almost immediate.
>>
>> Hoping this may be useful to the developer to improve an already
>> fantastic program!
>
> Yes this is useful. Very useful in fact. It means we have moved
> forward in what we can use Hercules on. Now I'm not a fan of D-Link,
> but in this case the fact that you've got it running on that family of
> NAS devices suggests that anyone can do that.

   Howdy Gregg.  Hercules runs on pretty much any platform that supports 
Linux or another UNIX-flavor OS.  This means it can run on pretty much 
anything that has an MMU and supports enough RAM and mass storage.  This 
has been the case for a long time.  It's neat stuff.

   That said, though, I'm pretty sure Paul was actually talking about 
his GCIC buffer management optimization, whether THAT would be useful or 
not.

             -Dave

-- 
Dave McGuire
Port Charlotte, FL