GNU bug report logs - #39130
Speed up C Foreign Function Interface

Previous Next

Package: guile;

Reported by: Amirouche <amirouche <at> hyper.dev>

Date: Tue, 14 Jan 2020 12:16:01 UTC

Severity: normal

To reply to this bug, email your comments to 39130 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guile <at> gnu.org:
bug#39130; Package guile. (Tue, 14 Jan 2020 12:16:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Amirouche <amirouche <at> hyper.dev>:
New bug report received and forwarded. Copy sent to bug-guile <at> gnu.org. (Tue, 14 Jan 2020 12:16:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Amirouche <amirouche <at> hyper.dev>
To: bug-guile <at> gnu.org
Subject: Speed up C Foreign Function Interface
Date: Tue, 14 Jan 2020 12:15:06 +0000
I benchmarked Chez Scheme vs. Guile. Guile is 3 to 5 times slower
than Chez.  I attribute that mostly to C Foreign Function Interface.

The application will parse a text file (n-turtle format) and store
in an embedded database (wiredtiger).  Most the CPU time should be
spent during parsing [0], then packing scheme objects into
bytevectors [1] and at last C FFI.

[0] 
https://github.com/amirouche/nomunofu/blob/master/nomunofu/index.scm#L13

[1] 
https://github.com/amirouche/nomunofu/blob/master/nomunofu/okvs/pack.scm#L208

The chez code is in wip-chez branch.

The Guile FFI code of that particular application can be improved.

Still, I read on IRC that there is some interests to improve C FFI,
that is why I fill this issue to be able to keep track of it.

One step forward, would be to have C FFI benchmarks that are easy
to run with Chez, Guile, and Gambit.

Anyone up for the task?




Information forwarded to bug-guile <at> gnu.org:
bug#39130; Package guile. (Tue, 18 Feb 2020 13:24:02 GMT) Full text and rfc822 format available.

Message #8 received at 39130 <at> debbugs.gnu.org (full text, mbox):

From: Roel Janssen <roel <at> gnu.org>
To: Amirouche <amirouche <at> hyper.dev>, 39130 <at> debbugs.gnu.org
Subject: Re: bug#39130: Speed up C Foreign Function Interface
Date: Tue, 18 Feb 2020 14:23:34 +0100
Dear Amirouche,

The Github links don't seem to work (for me).

Kind regards,
Roel Janssen

On Tue, 2020-01-14 at 12:15 +0000, Amirouche wrote:
> I benchmarked Chez Scheme vs. Guile. Guile is 3 to 5 times slower
> than Chez.  I attribute that mostly to C Foreign Function Interface.
> 
> The application will parse a text file (n-turtle format) and store
> in an embedded database (wiredtiger).  Most the CPU time should be
> spent during parsing [0], then packing scheme objects into
> bytevectors [1] and at last C FFI.
> 
> [0] 
> 
https://github.com/amirouche/nomunofu/blob/master/nomunofu/index.scm#L13
> 
> [1] 
> 
https://github.com/amirouche/nomunofu/blob/master/nomunofu/okvs/pack.scm#L208
> 
> The chez code is in wip-chez branch.
> 
> The Guile FFI code of that particular application can be improved.
> 
> Still, I read on IRC that there is some interests to improve C FFI,
> that is why I fill this issue to be able to keep track of it.
> 
> One step forward, would be to have C FFI benchmarks that are easy
> to run with Chez, Guile, and Gambit.
> 
> Anyone up for the task?
> 
> 
> 
> 





This bug report was last modified 5 years and 116 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.