On Wed, Jan 1, 2014 at 6:47 PM, john skaller
<skal...@users.sourceforge.net> wrote:
>
> On 02/01/2014, at 12:44 PM, srean wrote:
>
>>
>> Cause it's work for me. And you're making me responsible.
>> Felix is a community project.
>>
>> Pull request doesnt preclude it from being a community project, in fact that 
>> seems to be the de facto way to collaborate on Github. I like the 
>> psychological safety net that it offers and its easy to review, solicit 
>> commentary and optionally merged. Whats not to like ?
>
> Go for it :-)
>
> Of course, you will also have to synchronise what you're doing with
> what I'm doing.
>
> What I don't like is that a pull request can have a LOT of changes
> in it. So unlike small commits TL;DR.
>
>
>> I dont really know how they implement it, for one thing I do know is that 
>> they do not use a spaghetti stack. Walter Brights view has been that it is 
>> unnecessary on a 64 bit m/c. Rust seems to have movied in that direction too.
>
> Well until recently all phones used 32 bit ARM processors.
> Certainly 64 bit address space helps run more threads.
>
> But Felix can run millions of fthreads and you NEED that for
> a telco environment, and you NEED that for games.
>
> 1 million fibres on a machine stack swapping system is at
> least 4K x 1M = 4G of address space. Dont forget most x86_64
> chips do not output 64 bits of bus. Registers are 64 bit, the actual
> address space available is less.
>
> If all those threads are lightly used by context switches are
> frequent you effectively have no cache. Whereas heap allocated
> small object provide better localisation.
>
> Also note, your VM will be clobbered with one VM entry per page
> you're going to need 1M VM entries. That's way more than Home
> Windows offers AFAIK.  Not sure about Linux or OSX, but most OS have
> limits on VM page map size. x86_64 can actually virtualise second level
> page maps, so an actual memory access could require two page loads
> (one for the page map and one for the actual memory).
>
> Just to get an idea .. my Macbook Pro only HAS 2G of ram.
> Also don't forget C does NOT allow malloc() to return demand
> paged memory. Malloc has to return actual memory.

On Mac/Linux/Windows, malloc won't return committed memory.  You can
malloc much more memory than your system has.  (You can turn off
overcommit at the OS level on Linux, but if you want actual memory
when you call malloc then you'll need to touch each page of it.)

I wonder why you think C doesn't allow that.  All bets are off if you
exceed "resource limits" anyway.

-- James

------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
Felix-language mailing list
Felix-language@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/felix-language

Reply via email to