Concurrency Kit and Epoch Based Reclamation

Joel Sherrill joel at rtems.org
Tue Sep 4 13:58:31 UTC 2018


On Tue, Sep 4, 2018 at 12:59 AM Sebastian Huber <
sebastian.huber at embedded-brains.de> wrote:

> On 03/09/18 11:35, Sebastian Huber wrote:
> > Hello,
> >
> > I have now a prototype implementation of the FreeBSD epoch memory
> > reclamation API:
> >
> > https://github.com/freebsd/freebsd/blob/master/share/man/man9/epoch.9
> >
> > I think it would be a nice feature for RTEMS SMP in general. One
> > option would be to integrate it in RTEMS instead of libbsd. This would
> > require an import of Concurrency Kit to RTEMS:
> >
> > https://github.com/concurrencykit/ck
> >
> > Concurrency Kit lacks support for C++ and needs probably some changes
> > to work well in uni-processor setups. So, it would need some changes
> > for RTEMS. What do you think?
>

The license has a BSD-style advertising clause.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.

Is condition #2 ok for inclusion in RTEMS?


> >
>
> Just some more background information. The Concurrency Kit offers an
> epoch API for general use and is used by FreeBSD. The epoch API and
> implementation from FreeBSD is a specialization which deals also with
> the storage management of the epoch records (ck_epoch_record_t) as a
> per-processor resource. The use of per-processor data is a very elegant
> approach which avoids some life cycle issues which would pop up if
> thread-local records would be used.
>
> The measured performance on a T4240 is quite good. Concurrent enter/exit
> scales linearly up to 12 processors, then I guess a bus saturation is
> reached.
>
> --
> Sebastian Huber, embedded brains GmbH
>
> Address : Dornierstr. 4, D-82178 Puchheim, Germany
> Phone   : +49 89 189 47 41-16
> Fax     : +49 89 189 47 41-09
> E-Mail  : sebastian.huber at embedded-brains.de
> PGP     : Public key available on request.
>
> Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20180904/1539e0db/attachment-0002.html>


More information about the devel mailing list