lkml.org 
[lkml]   [2015]   [Mar]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH 0/5] Support negative number of CPUs
Date
Support for machines without any CPU at all was brought 3 years ago
by Paul (https://lkml.org/lkml/2012/3/31/131). The goal was to reduce
the complexity of programming on modern computing.

Now meeting the simplicity beyond that of sequential programming had a
cost: such hardware configuration found a user base but didn't meet much
success among HPC users.

So we have now a new challenge to solve: keep the beyond-sequential
programming simplicity while providing a highly parallel processing that
still scale.

This patchset proposes a solution. The support for negative number of
CPUs is able to help scale computing up to O(-NR_CPUS). The more you have
CPUs the higher you scale, to the point that software execution should
complete before you start writing that software (assuming you have around
-1024 CPUs). And programming gets even more simple because you have lesser
CPUs to handle.

Now keep in mind this patchset is only a draft. Not build tested and
I don't have the hardware yet.

Frederic Weisbecker (5):
cpu: Infrastructure for negative cpu handling
smp: IPI handling for negative CPU
cpumask: Basic negative number of CPUs handling
init: Support negative CPUs boot and halt code
x86: Support reverse execution

arch/x86/kernel/cpu/negative.c | 28 ++
arch/x86/kernel/head64.c | 4 +
arch/x86/kernel/reboot.c | 8 +
include/linux/cpumask.h | 48 +++
init/main.c | 7 +
kernel/cpu_neg.c | 791 +++++++++++++++++++++++++++++++++++++++++
kernel/smp.c | 38 +-
7 files changed, 920 insertions(+), 4 deletions(-)
create mode 100644 arch/x86/kernel/cpu/negative.c
create mode 100644 kernel/cpu_neg.c

--
2.1.4



\
 
 \ /
  Last update: 2015-04-01 02:01    [W:0.058 / U:0.072 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site