I havn't messed with it lately, and didn't experiment across threads with it, but you might be looking for using shared memory. See "perldoc perlfunc /shmget" and "perldoc perlipc /SysV" . What it does is setup memory segments which can be directly read by separate processes. It requires handling alot of details, but it is supposedly the fastest IPC. Check out