sb-bsd-sockets runtime alien allocation

Bug #562500 reported by Stas Boukarev on 2010-04-13
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
SBCL
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
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  Edit
Everyone can see this information.

Other bug subscribers