SMP Status Report

Sebastian Huber sebastian.huber at embedded-brains.de
Tue Aug 20 10:15:03 UTC 2013


Hello,

I was quite busy with SMP changes in the last couple of weeks.  Here is a 
status report:

- SMP port to PowerPC and ARM.

- Simplification of low-level start.

- Usage of not available features will return an error status.  See also
   +smptests/smpunsupported01+.

- CPU architecture specific SMP lock API.  See also +smptests/smplock01+.

- ISR locks (used by TOD handler, Termios, file system).

- Cache optimized per-CPU controls leading to better performance and easier
   assembler code.

- Per-CPU thread dispatch disable level.  This is a huge performance
   improvement.  It greatly simplifies the interrupt entry/exit assembler code.
   This fixed the '_Thread_Dispatch()' bug of missed thread dispatch necessary
   indications (see +sptests/spintrcritical18+) and also PR2082.

- Useful test results with RTEMS debug enabled.

- RTEMS debug controlled assertions, see also '_Assert()'.  Now this can be
   used effectively since the test suite yields useful results with RTEMS_DEBUG
   enabled.

- Systematic bug prevention with RTEMS asserts, see also '_Per_CPU_Get()'.

- Two G-FP scheduler implementations and general SMP support for the
   scheduler.  See also +smptests/smpscheduler01+, +smptests/smpmigration01+ and
   +smptesets/smpswitchextension01+.

- Header file re-organization to reduce the dependencies between source and
   header files.  This simplifies code review and reduces build times during
   development.  See also PR766.

The test suite with SMP and debug enabled yields good results on ARM and PowerPC.

The next major issue is the ISR disable/enable used for mutual exclusion.  This 
will not longer work on SMP.

-- 
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.



More information about the devel mailing list