Email or username:

Password:

Forgot your password?
Devil Lu Linvega

Noodling with parallelism in uxn, I expected it to be a pain, but I suppose that stack machines are inherently well adapted to doing this sort of things.

9 comments
slewis

@neauoire so parallelism this wouldn’t expand the 64kb limit right? Just allow the partitioning of the 64kb to multiple tasks?

Devil Lu Linvega

@slew it wouldn't. In my experiments, the threads get their own stacks, which is then added on top of the main one.

The memory is shared, so ideally, you'd thread routines that don't step onto each other.

Devil Lu Linvega

@nasser I have! They're wonderful.

I've been writing little programs for the INMOS T414 all weekend, so I'm very much in a parallel mindset atm :moomin_hattifatteners:

Ramsey Nasser

@neauoire cool! I need to look at them again. parallel processes can push data onto neighboring stacks or something like that?

Devil Lu Linvega

@nasser kindda, there's multiple ways to go about it I think, I've only tried two things that worked so far:

- forks that have a copy of the stack, and threads that have their own stacks which are appended on the parent working stack as they resolve.

It sounds fancy when written like that but it's pretty straight-forward. I don't really have a plan for this, I was just curious to see if I could take some concepts from OCCAM and bring then into my daily workflow.

Devil Lu Linvega

@ddlyh I've been testing using the System device, but I don't think I will be merging this in uxnemu, it has no practical application whatsoever.

Go Up