Friday December 10, 2010

[Time] NameMessage
[05:55] samBiotic could someone please help me get my ruby bindings working on osx.
[05:56] andrewvc samBiotic
[05:56] andrewvc what's going on on OSX?
[05:56] samBiotic zeromq has been installed with homebrew
[05:56] samBiotic brew install zeromq
[05:56] andrewvc also, which lib, ffi-rzmq or rbzmq
[05:57] andrewvc hmm, but which ruby binding
[05:57] andrewvc have you installed either of the zeromq gems yet?
[05:57] samBiotic yes
[05:57] andrewvc which one?
[05:58] samBiotic gem install zmq -- --with-zmq-dir=/usr/local
[05:58] andrewvc hmmm, I installed zmq for the tarball, and gem install zmq worked fine
[05:58] andrewvc *from
[05:58] andrewvc no idea about homebrew though
[05:58] samBiotic checking for zmq_init() in -lzmq... no
[05:58] andrewvc you could just try using the zmq tarball
[05:59] samBiotic hmm yes i could
[05:59] andrewvc I've never installed it through brew myself
[05:59] samBiotic ok will try now
[05:59] andrewvc cool, I know more about the search paths for ffi-rzmq
[05:59] andrewvc you might want to consider using ffi-rzmq btw
[05:59] samBiotic ok
[06:00] andrewvc unless you have a specific need for the slight speed boost of rbzmq (just my $0.02)
[06:00] samBiotic my aim is to build an open sound control multicaster eventually
[06:00] andrewvc cool project
[06:01] samBiotic i have forward scheduling of packets working but time to live reductions would be preferable
[06:02] Steve-o samBiotic: is that like the BBCs project?
[06:02] samBiotic what would that be?
[06:03] andrewvc samBiotic, with that kind of time constraint, wouldn't ruby's GC cause issues?
[06:03] Steve-o they have a music collaboration tool
[06:03] andrewvc at least MRI
[06:04] samBiotic andrewvc: possibly, using this
[06:04] Steve-o built upon Kamaelia
[06:04] samBiotic Steve-o: looks interesting
[06:05] andrewvc if you have GC issues btw, jRuby might be the way to go.
[06:05] andrewvc plus, you'll get real multithreading if you need it
[06:06] andrewvc the Kamaelia site seems abandoned
[06:07] Steve-o try here,
[06:07] Steve-o broken default page
[06:07] andrewvc oh, there we go
[06:09] Steve-o kamaelia jam from a gsoc 2008 project,
[06:09] samBiotic basically, i aim to eliminate network jitter at a slight expense of increased but static delay by forward syncronising timetagged packets
[06:10] Steve-o more like pulseaudio then?
[06:11] samBiotic control data only
[06:15] Steve-o ok, similar to the pro light control system, what ever that is called
[06:15] Steve-o DMX?
[06:18] samBiotic yeah kind of, it's just a network procotol developed by MIT.
[06:18] samBiotic sorry CNMAT
[06:19] andrewvc samBiotic what's zeromq bring to the table that the OSC protocol doesn't?
[06:20] andrewvc I'm not familiar with OSC at all
[06:20] Steve-o I'm guesing OSC over 0MQ
[06:20] samBiotic thats what i was going to test
[06:20] Steve-o whilst DMX is commercially licensed
[06:26] andrewvc btw, did you ever get it up and running on OSX steve?
[06:26] andrewvc errr Sam
[06:27] samBiotic still at it
[06:27] andrewvc I should mention, if you use zerocopy the ffi binding can beat out the speed of the C binding. Not sure if you need to actually open the msgs as they go through
[06:28] samBiotic trying gem install ffi-rzmq now
[06:28] andrewvc btw, some versions of the ffi gem don't play well with ffi-rzmq
[06:29] samBiotic seems to have work with my zeromq homebrew install
[06:29] andrewvc nice
[06:29] andrewvc I think the most recent one is fine, but if you have weird hanging issues related to threads, try building it from the ffi github repo
[06:29] samBiotic worked*
[06:30] andrewvc cool
[07:00] samBiotic andrewvc and Steve-o thanks for the help
[07:00] samBiotic bye for now
[14:25] matias hi all :-)
[14:39] Steve-o mikko: I've backported many fixes to PGM 5.0 but ANSI strict is a bit too much work, therefore 5.1 must be used for Cygwin/Solaris x6/ANSI strict/OSX
[14:40] mikko Steve-o: ok
[14:40] mikko maybe we should remove the strict flags for solaris for now
[14:40] mikko until we can use 5.1 in zeromq
[14:41] Steve-o I need to run through all the tests then I can ship a 5.0.93 and the first 5.1 release
[14:43] Steve-o Sun ONE is odd as ever, it wants __asm__ only in C++ ANSI strict
[14:44] Steve-o every other combination is fine with __asm
[15:29] mikko sustrik_: how does HWM interact with ZMQ_QUEUE?
[15:32] sustrik mikko: you have to set it by hand
[15:32] sustrik i.e.
[15:33] sustrik create socket 1, sreate socket 2
[15:33] sustrik set hwm on 1. set hwm on 2
[15:33] sustrik zmq_device (ZMQ_QUEUEU, s1, s2);
[15:35] mikko ok, so in order to get messages swapped out when there is no consumer on the back socket i would just set on s2 ?
[15:42] mikko Assertion failed: rc == 0 (pipe.cpp:187)
[15:43] mikko swap init
[15:43] mikko makes sense now
[15:43] mikko so permission issues on swap file causes an assertion
[15:43] mikko it looks like
[15:44] mikko maybe hte swap location should be a sockopt
[15:44] mikko as for example this daemon chdirs to / and drops privileges
[15:44] mikko so it makes sense that it cant write
[15:44] sustrik mikko: yes
[15:45] sustrik it's a problem
[15:47] sustrik zmq should not fail
[15:47] sustrik however, i am not sure what the solution should be
[15:47] mikko in this case it would be easy to return error and set errno to eperm
[15:48] sustrik it happens on setsockopt?
[15:48] mikko it happens later
[15:48] sustrik i would say it should happen during setsockopt
[15:49] sustrik the async error later on is just confusing
[15:49] mikko thats impossible
[15:49] sustrik why so?
[15:49] mikko you create sequential files
[15:49] mikko someone might have one file present with same name which is not writable
[15:49] mikko maybe the closes you can get is:
[15:49] mikko a) give a sockopt for setting swap dir
[15:50] mikko b) check that swap dir is writable
[15:50] mikko c) leave the rest to user
[15:50] sustrik what i mean was to crate the file would be created directly when setsockopt(SWAP) is called
[15:50] sustrik rather than later on
[15:50] sustrik thus the credentials would be checked immediately
[15:50] mikko yes, that would work as well
[15:51] sustrik that should be rathereasy
[15:51] mikko and allow setting swap file name by sockopt
[15:51] sustrik yes, that's an option
[15:51] mikko if not set default to current
[15:52] mikko a lot of daemons won't have write permissions to $PWD
[15:52] sustrik right
[15:52] sustrik can you fill an issue in the bugtracker so that we don't forget about it?
[15:54] mikko sustrik_: even better, i can create an issue and try to create patch tonight
[15:57] mikko issue 140
[15:58] sustrik :)