Hi Carter

Now that the Strict pragma is being implemented, perhaps it is time to retake that work.  

I have leksah IDE installed. it is a haskell application. What I can verify with my performance meter on Windows is that merely scrolling text, the lekssah  produces much more page faults than any non Haskell application.

2015-11-15 1:45 GMT+01:00 Carter Schonwald <carter.schonwald@gmail.com>:
Indeed! There's no one true best format.  
There was some work to add native support for c structs to the Haskell ffi, as storable format for non recursive records, but there's some really gnarly subtleties with respect to alignment and packing that come up that likely are fundamentally impossible to characterize in a simple algorithmic fashion that will serve everyone well. 


On Saturday, November 14, 2015, Will Yager <will.yager@gmail.com> wrote:
This is why CPUs have many independent cache lines. Unpacking a vector into multiple vectors is usually fine for performance. I have seen it actually increase performance, because it simplifies addressing. 

-Will

On Nov 14, 2015, at 05:30, Alberto G. Corona <agocorona@gmail.com> wrote:


This is nice in some cases, but does most of the time does not. this does not solve the problem of CPU cache since the fields in the data are at least lenght (Vector)  away. I mean that if the vector is moderately long, if the first field is in the cache, the second or third etc may not be. Usually the fields of any data are handled together.  




--
Alberto.