Skip to content

use of zmq zero-copy is no longer correct #1278

@minrk

Description

@minrk

the switch from ZMQStream to async Socket in #1079 has resulted in always receiving all messages with copy=True, but there are checks for isinstance(always_bytes_object, zmq.Message) which always results in copy=True.

This can get costly because inproc sends with copy=False are particularly lightweight, whereas the new unconditional copy plus additional inproc send/recv for subshells result in at least two additional in-memory copies of every message frame received by the kernel.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions