News for hackers. Stuff that matters.
Re:LibPhenom, a high-performance C eventing framework from F... by IPGlider on Monday September 16, 2013 @05:02PM (#6395887)
How does this compare to libdispatch (https://libdispatch.macosforge.org/) in functionality and performance? I'm very interested in this.
Re:LibPhenom, a high-performance C eventing framework from F... by wezfurlong on Monday September 16, 2013 @05:59PM (#6396196)
We haven't looked at libdispatch specifically; would welcome your feedback on how we compare.

We hope we do well here; we've had some nice results: https://github.com/facebook/libphenom/commit/c2753c2154a0cff...

Re:LibPhenom, a high-performance C eventing framework from F... by IPGlider on Monday September 16, 2013 @07:30PM (#6396590)
That looks nice.

I used libdispatch to prototype a server and would be great to compare with other libraries before starting the project.

libPhenom seems to have much more features, maybe even more than I need, but the documentation seems good. I will try to make another prototype with your lib.

Thanks.

Re:LibPhenom, a high-performance C eventing framework from F... by wezfurlong on Monday September 16, 2013 @06:00PM (#6396199)
This is the test code referenced by that commit: https://github.com/facebook/libphenom/blob/master/tests/tpoo...
Re:LibPhenom, a high-performance C eventing framework from F... by nwmcsween on Tuesday September 17, 2013 @01:30AM (#6397757)
Why do you do -fno-omit-frame-pointer on x86_64 the ABI requires dwarf or is there something I'm missing?
Re:LibPhenom, a high-performance C eventing framework from F... by wezfurlong on Tuesday September 17, 2013 @01:36AM (#6397770)
Frame pointers make things easier for tools to get backtraces without requiring complex dwarf unwinders. The observability is something I value more than not being able to use that register for other things.
Re:LibPhenom, a high-performance C eventing framework from F... by throwaway812 on Monday September 16, 2013 @07:20PM (#6396551)
Functionality: Well, libdispatch doesn't really work outside of OS X, and this is primarily targeted at Linux server apps.

I can't comment on performance.

Re:LibPhenom, a high-performance C eventing framework from F... by petsos on Monday September 16, 2013 @08:27PM (#6396841)
Also, it doesn't look very active: https://libdispatch.macosforge.org/trac/log/
Re:LibPhenom, a high-performance C eventing framework from F... by IPGlider on Monday September 16, 2013 @07:25PM (#6396570)
libdispatch works on FreeBSD (https://wiki.freebsd.org/GCD) and on Linux (http://packages.debian.org/wheezy/libdispatch-dev), but I don't know if blocks works on Linux.
Re:LibPhenom, a high-performance C eventing framework from F... by Moto7451 on Monday September 16, 2013 @08:25PM (#6396830)
Re:LibPhenom, a high-performance C eventing framework from F... by throwaway812 on Monday September 16, 2013 @09:33PM (#6397073)
The library may work, but Grand Central Dispatch, which is the whole point, is really an OS X thing. BSD may have adopted it, not sure. I'm pretty that confident Linux has not.
Re:LibPhenom, a high-performance C eventing framework from F... by fyolnish on Monday September 16, 2013 @10:54PM (#6397312)
Grand Central Dispatch is just the marketing name for libdispatch. The do use pthread work queues if available, which they are on OSX & BSD. On linux a thread pool is used
Re:LibPhenom, a high-performance C eventing framework from F... by throwaway812 on Tuesday September 17, 2013 @10:22AM (#6399417)
Yes, so there's absolutely no reason to use it if you're primarily targeting Linux.