: ${PMAX:=`ls -1d /sys/devices/system/cpu/cpu* | wc -l`}

doParallel() {
  local items item currentProcess=0
  for item in "$@"; do
    items[$currentProcess]="${items[$currentProcess]} \"$item\""
    shift
    let currentProcess=$(( (currentProcess+1)%PMAX ))
  done

  for (( currentProcess=0; currentProcess<PMAX; currentProcess++ )); do
    [ -n "${items[$currentProcess]}" ] && \
        eval doSequentiell ${items[$currentProcess]} &
  done
  wait
}