[zeromq-dev] Fwd: [libzmq] Atomic operations for armv7a (#322)

Ian Barber ian.barber at gmail.com
Tue Apr 24 20:20:47 CEST 2012


Just wanted to repost this commit to the list - looks very nice to me, but
my opinion is of much worth on this one :) It's merged in if anyone wants
to pull master and try.

Ian

---------- Forwarded message ----------
From: Patrick Trantham <
reply+i-4264612-72449c8da2648442ec257fb7508ee2e07f8439d3-210006 at reply.github.com
>
Date: Tue, Apr 24, 2012 at 6:15 PM
Subject: [libzmq] Atomic operations for armv7a (#322)
To: Ian Barber <ian.barber at gmail.com>


This commit implements atomic operations for the armv7a architecture
using gcc inline assembly.  This offers higher performance compared to
pthread mutexes.

Tested on an am3517 evm, clocked at 600MHz:

./inproc_thr 200 1000000
------------------------
53-60K messages / sec, pthread mutexes
73-90K messages / sec, assembly atomic ops

./inproc_lat 200 1000000
------------------------
average latency: 42.234 [us], pthread mutexes
average latency: 35.496 [us], assembly atomic ops

You can merge this Pull Request by running:

 git pull https://github.com/tranthamp/libzmq master

Or you can view, comment on it, or merge it online at:

 https://github.com/zeromq/libzmq/pull/322

-- Commit Summary --

* Implement atomic operations for armv7a

-- File Changes --

M src/atomic_counter.hpp (32)
M src/atomic_ptr.hpp (35)

-- Patch Links --

 https://github.com/zeromq/libzmq/pull/322.patch
 https://github.com/zeromq/libzmq/pull/322.diff

---
Reply to this email directly or view it on GitHub:
https://github.com/zeromq/libzmq/pull/322
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20120424/50e8b830/attachment.htm>


More information about the zeromq-dev mailing list