sb-bsd-sockets runtime alien allocation

Bug #562500 reported by Stas Boukarev
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
SBCL
Triaged
Medium
Unassigned

Bug Description

sb-bsd-sockets is doing runtime alien allocation in some places, which causes some functions to be more slow

e.g. (time (sb-bsd-sockets:get-host-by-name "localhost"))

sbcl notes about alien allocation at least in the following functions:
sb-bsd-sockets::make-host-ent
sb-bsd-sockets::get-address-info
sb-bsd-sockets::get-name-info
sb-bsd-sockets::get-protocol-by-name

Changed in sbcl:
importance: Undecided → Medium
status: New → Triaged
tags: added: contribs optimization
Revision history for this message
Nikodemus Siivola (nikodemus) wrote :

SB-ALIEN in general does a lot of same work again and again when the core optimizations don't kick in.

In the above case, for example, we generate the naturalize-lambda for (UNSIGNED 8) four times during the call.

It seems that cacheing/precomputing the naturalize, deport, deport-alloc, deposit, and extract functions for various types would be a clear win -- particularly when coupled with interning alien types.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.