Hi all,
Is there a way to do "ram backed" memory mapping in Dyalog, as opposed to "File Backed"? Don't think there is, but thought I would ask.
(If not, would it make sense to extend []MAP to do it?)
(see http://msdn.microsoft.com/en-us/library/aa908742.aspx?ppud=4)
Or do I need to drop into []NA?
It appears first class support is planned in .NET 4.0.
I vaguely remember Eric Baelen's son doing a presentation on this with APL2000 some years ago, but of course have no notes from it.
Thanks for any comments.
Ram-Backed Memory Mapping
- Morten|Dyalog
- Posts: 460
- Joined: Tue Sep 09, 2008 3:52 pm
Re: Ram-Backed Memory Mapping
Don't think there is... Can you tell us a bit more about what you would like to achieve in your application through the use of this feature, so we can think about the potential design issues?
-
- Posts: 431
- Joined: Fri Oct 03, 2008 4:14 pm
Re: Ram-Backed Memory Mapping
Morten, the original intent was just for very simple interprocess comunication between APL and a long running .NET process in C#, but now I have a better, simpler, technique. Basically I have long running method out in .NET land (which we wrote, so are in control of), and wanted to be able to determine the progress to update a form. I was already multi-threading in Dyalog, as that is the way to be able to update a form, but I had the & fairly high up the stack and didn't have access to the .NET object in question. I moved the & down to exactly the point where I call the long-running method, so that I still have access to the object when I'm looking to update the progress, and can now just access properties of the object that we put there for just for the purpose of reporting progress.
So, ram-backed mapping seems total overkill for this, though perhaps useful for some other things.
Looking back, it's a wonder how we ever wrote responsive GUI's without multi-threading.
So, ram-backed mapping seems total overkill for this, though perhaps useful for some other things.
Looking back, it's a wonder how we ever wrote responsive GUI's without multi-threading.
-
- Posts: 1
- Joined: Mon Mar 22, 2010 3:04 pm
Re: Ram-Backed Memory Mapping
Actually, we'd like to place another weight in the pan in favour of "RAM-backed mapping". We currently use ⎕MAP to store cached copies of big data files outside the workspace. We do this because the data is mostly static as well as bulky and so likely to cause "WS FULL"s which can be extremely inconvenient to us. Our requirement however is not for this data to be written back to the disc but rather to be kept solely in memory.
Re: Ram-Backed Memory Mapping
KlausChristiansen wrote:Our requirement however is not for this data to be written back to the disc but rather to be kept solely in memory.
I would have thought the simpler approach would be to simply use []MAP on a RAMDISK.
I use VSuite Ramdisk on WinXP-Pro 32-bit : http://www.romexsoftware.com/
I can allocate a Ramdisk in the "memory gap" between 3GB and 4GB.
I point my Browser's ( Opera ) Cache to this , thus saving loads of hard-disk access time and space ( and cleaning up ). May I suggest to try using this and see how it performs. ( BTW, you can download it "free" of course.)
The "Setup" options are excellent : i.e. you can load at boot, ask to save on shutdown etc. etc.
Cheers
phil
- StefanoLanzavecchia
- Posts: 113
- Joined: Fri Oct 03, 2008 9:37 am
Re: Ram-Backed Memory Mapping
This is a nice suggestion. Alas, our customers are very picky about what we install on their servers...
Re: Ram-Backed Memory Mapping
StefanoLanzavecchia wrote:This is a nice suggestion. Alas, our customers are very picky about what we install on their servers...
Yes, I can imagine !
Of course, there are more "expensive" RamDisks out there which include support for Coporations. It's a shame that IT departments always seem to think that "expensive" means "better" !
BTW , I have been using the VSuite Ramdisk for over 2 years ... absolutely 100% OK !