Re: Looking for a computation benchmark in Guile

2022-11-10 Thread Dr. Arne Babenhauserheide
Olivier Dion via General Guile related discussions writes: > 1. No I/O > 2. No delimited computation (no rewind of the stack) > 3. No foreign call > 4. Can be multi-thread (would be great actually) > 5. Reproducible (pure computation are great candidate) > > Also, maybe there's already stan

Looking for a computation benchmark in Guile

2022-11-10 Thread Olivier Dion via General Guile related discussions
Hi, In my research on dynamic instrumentation, I would like to see what's the runtime overhead of dynamically patching function entry/exit with my tool. I can already patch every libguile function dynamically, I just need to see what's the impact on the runtime now. Here's the specification of s

Re: map-par slower than map

2022-11-10 Thread Olivier Dion via General Guile related discussions
On Thu, 10 Nov 2022, Damien Mattei wrote: > Hello Zelphir, > > i finally find a possible cause of no speed up of my code, i find that > using your code the procedure keep blocked on the first 'touch at line 27 > here: > I have found a possible deadlock with Guile's mutex. In some very rare cases

Re: escaping from a recursive call

2022-11-10 Thread Olivier Dion via General Guile related discussions
On Thu, 10 Nov 2022, Damien Mattei wrote: > will it work well in // code with future or thread ,i'm having already > problem with // code that,compute well but show no speed up, is it because > of continuation? not being compatible with //,does macro generates > functions that causes unknown probl

Re: escaping from a recursive call

2022-11-10 Thread Damien Mattei
solutions have been posted, i'm using mine, which update my 'def macro: ;; (def (bar n);; (cond ((= n 0) 'end0);; ((= n 7) (return-rec 'end7));; (else (cons n (bar {n - 1}) ;; scheme@(guile-user)> (bar 5);; $4 = (5 4 3 2 1 . end0);; scheme@(guile-user)> (bar 10);; $5 = end7 (defi

Re: map-par slower than map

2022-11-10 Thread Damien Mattei
as it worked with your code it is incompatibility between my procedures and 'future. I read 'future require pure function,ok my function are not pure but the side effect they did are on partitioned sets of data, so there is no reason for concurrence accessing data between each threads. I will try t

Re: escaping from a recursive call

2022-11-10 Thread Chris Vine
On Wed, 09 Nov 2022 12:55:42 -0500 Olivier Dion via General Guile related discussions wrote: > On Wed, 09 Nov 2022, Damien Mattei wrote: > > but in the general case , i want a macro that can do it on any function > > (i'm not sure it can be done because the continuation have to be captured > > j

Re: map-par slower than map

2022-11-10 Thread Zelphir Kaltstahl
Hi Damien! I think Racket futures and Guile futures are a bit different. According to the Racket documentation "The level of parallelism available from those constructs, however, is limited by several factors, and the current implementation is best suited to numerical tasks." (https://docs.ra

Re: map-par slower than map

2022-11-10 Thread Damien Mattei
note that it is not a Guile problem, the same code give also no speed up with Racket 'future ,i have not already test it but it should block also on 'touch future... On Thu, Nov 10, 2022 at 11:32 AM Damien Mattei wrote: > Hello Zelphir, > > i finally find a possible cause of no speed up of my co

Re: map-par slower than map

2022-11-10 Thread Damien Mattei
Hello Zelphir, i finally find a possible cause of no speed up of my code, i find that using your code the procedure keep blocked on the first 'touch at line 27 here: https://notabug.org/ZelphirKaltstahl/guile-project-euler-solutions/src/ebb19b11b465903105924adb6252f1e2ecf63859/lib/parallelism.scm