On Wed, Jun 07, 2006 at 05:15:20PM -0400, Kris Maglione wrote: > On Wed, Jun 07, 2006 at 11:42:02AM +0200, Anselm R. Garbe wrote: > >libixp is much smaller than the complete lib9p* dependencies of > >Plan9 (which are about 50kSLOC including lib9, if not more). And > >libixp/client.c keeps the connection between dial and hangup, I > >don't think the client part is a bad API of libixp (however the > >server side needs polishing, I always agreed to this). > > > >A sloccount of libixp tells me it consists of 1244 lines, for > >everything (socket handling, server/client side, protocol layer, > >- only dependency are 173 lines of libcext). > >This is 1.5kSLOC vs. 60kSLOC... > Yes, I considered mentioning this after I posted. Like I said, though, I > already gave up writing libixp bindings to ruby. The interface for > ixp_client is sane, I'll admit, but I'd rather rewrite it in ruby whan > write bindings. It would actually be easier. I think, though, that I'd > rather have lib9pclient bindings, since it fully supports authentication. I > think that it's somewhat slower, though, than libixp. I haven't actually > benchmarked the libs, just the executables (wmiir and 9p), and wmiir is ~3x > the speed.
This might be related to lib9, because nearly every libc call of Plan 9 apps ends is wrapped in the Unix environment by lib9. Anyway, in 9base I linked everything statically and the performance gain was fantastic (however 9base didn't contained lib9* stuff, because that depends on libthread, which is not very portable, e.g. amd64/ia64 had serious problems with p9p (dunno if that has been fixed in the meantime). I saw a p9p discussion in the IRC. Actually I came to the conclusion that Russ did it right not to modularize the beast. The current source tree is pretty much similiar to the original Plan 9 source tree, that's why p9p is a rather monolithic source tree and cannot be modularized easily. On the other hand this is also the reason why I think depending on any bits from Plan 9 is crap, because you depend on p9p in the end at least - which only few people really want to install... Thus p9p is a bad default, but a great option. Regards, -- Anselm R. Garbe ><>< www.ebrag.de ><>< GPG key: 0D73F361 _______________________________________________ [email protected] mailing list http://wmii.de/cgi-bin/mailman/listinfo/wmii
