do-select FD set bytevector sizes

Bug #237627 reported by Derick Eddington
2
Affects Status Importance Assigned to Milestone
Ikarus Scheme
Fix Committed
Wishlist
Abdulaziz Ghuloum

Bug Description

In ikarus.io.ss, in do-select, n is calculated to be (add1 (get-max-fd)), and the rbv, wbv, and xbv bytevectors' sizes are n, but I think their sizes could be (add1 (div (get-max-fd) 8)) in order to not allocate larger bytevectors than needed for the bit sets. Or, for even better performance, they could be allocated only once to FD_SETSIZE (I guess a foreign-call to get that) and zeroed on entry to do-select (but that's not multi-thread safe...).

Related branches

Changed in ikarus:
importance: Undecided → Wishlist
description: updated
Revision history for this message
Derick Eddington (derick-eddington) wrote :

But given how fast Ikarus's average allocation time is, probably the
difference between zeroing and allocating zeros is negligible?

Revision history for this message
Abdulaziz Ghuloum (aghuloum) wrote :

Fixed in 1502. Yes, it doesn't matter really how big it is.

Changed in ikarus:
assignee: nobody → aghuloum
status: New → Fix Committed
Changed in ikarus:
milestone: none → 0.0.4
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.