File: simd-dispatch

package info (click to toggle)
hhsuite 3.3.0%2Bds-7
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 16,076 kB
  • sloc: cpp: 24,689; perl: 5,022; python: 3,017; ansic: 2,556; makefile: 111; sh: 111
file content (20 lines) | stat: -rwxr-xr-x 453 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/bash

PKG=hhsuite
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
BASE=$(realpath ${DIR}/../libexec/$PKG/$(basename "$0"))

function test_and_run () {
	if grep -q "$1" /proc/cpuinfo && [ -x "${BASE}-$1" ]; then
		cmd="${BASE}-$1"
		shift
		# echo "${cmd}" "$@"
		"${cmd}" "$@"
		exit
	fi
}

for SIMD in avx2 avx sse4.1 ssse3 sse3 sse2 sse ; do test_and_run ${SIMD} "$@" ; done

# fallback to plain option
$BASE-plain "$@"