Another hardware Q

Glenn Alexander glenalec at shoalhaven.net.au
Sat Mar 29 02:52:15 PST 2003


Hi again, 
 
I'm wondering is SIMD useful for languages like Slate, Smalltalk, et al. Or do  
such systems have trouble effectively using this feature? If it isn't too  
useful, I'll limit myself to 32-bit architectures since SIMD is the only use  
for 64-bit in the sort of small system I am interested in building. It is  
very unlikely I'll have over 4G memory in my system this decade! Particularly  
if I'm running a properly written system with efficient code reuse and  
storing most of my data on a remote server. 
 
On a related note, would 16MB be enough memory for the bulk of a running  
system (including a decent GUI)? Assume I'm not running anything too big like  
a web server - the device is intended as a PDA. Playing ogg/vorbis files out  
of flash memory or small-screen video off a wireless network is about the  
most intensive stuff it is likely to have to deal with. Maybe Voice-Over-IP?  
Nah, I don't even IRC - I'm a messageboard type person! 
 
I want to use this 16MB as VERY fast cache-like memory tightly coupled to the  
CPU and VM-swap in/out to a larger (say 128MB) flash memory (it would have to  
be a soft-VM as a write-through cache mechanism would wear out the flash in a  
few hours). In power-down, the DRAM is flushed to flash too so the system can  
survive indefinitely with a dead battery (I have this strange aversion to  
data loss). Upping the size of the 'cache' becomes very expensive in both  
dollars and possible RAM speed. (Actually, there are a number of CPUs out  
there with 1-2M on the CPU that can behave as  either L2 cache or very fast  
regular memory. That is probably too tight, though.) The whole system doesn't  
have to live in the fast ram area, just all the parts needed for whatever two  
or three functions the user is using at the time (OS/GUI + 2 apps). I would  
want to avoid VM-thrashing as it would wear out the Flash. Any memory block  
should only be swapped out once in 10 minutes, on avearge, to get 4 years  
from the flash (100,000 writes). Inteligent flash management can increase  
this quite a bit, but I'd still like to avoid swaping memory except in the  
case of closing one application (group of objects related to a particular  
user task) and starting a different one. 
 
 
Regards, 
Glenn Alexander, hardware nutter. 



More information about the Slate mailing list