blob: 89acdc72c79800766d05c2ff49726c7dd18918f9 [file] [log] [blame]
XNNPACK Teamb455b122019-09-27 18:10:33 -07001#!/bin/sh
2# Copyright 2019 Google LLC
3#
4# This source code is licensed under the BSD-style license found in the
5# LICENSE file in the root directory of this source tree.
6
Frank Barchard683f5592020-04-10 00:48:26 -07007############################### AArch64 assembly ##############################
Frank Barchardaae722a2021-08-30 12:37:30 -07008tools/xngen src/f16-gemm/1x16-aarch64-neonfp16arith-ld32.S.in -D INC=0 -o src/f16-gemm/gen/1x16-minmax-aarch64-neonfp16arith-ld32.S &
9tools/xngen src/f16-gemm/4x16-aarch64-neonfp16arith-ld32.S.in -D INC=0 -o src/f16-gemm/gen/4x16-minmax-aarch64-neonfp16arith-ld32.S &
10tools/xngen src/f16-gemm/6x16-aarch64-neonfp16arith-ld32.S.in -D INC=0 -o src/f16-gemm/gen/6x16-minmax-aarch64-neonfp16arith-ld32.S &
11tools/xngen src/f16-gemm/1x16-aarch64-neonfp16arith-ld32.S.in -D INC=1 -o src/f16-gemm/gen-inc/1x16inc-minmax-aarch64-neonfp16arith-ld32.S &
12tools/xngen src/f16-gemm/4x16-aarch64-neonfp16arith-ld32.S.in -D INC=1 -o src/f16-gemm/gen-inc/4x16inc-minmax-aarch64-neonfp16arith-ld32.S &
13tools/xngen src/f16-gemm/6x16-aarch64-neonfp16arith-ld32.S.in -D INC=1 -o src/f16-gemm/gen-inc/6x16inc-minmax-aarch64-neonfp16arith-ld32.S &
Frank Barchard36b76b62020-04-10 12:39:17 -070014
Frank Barchardaae722a2021-08-30 12:37:30 -070015tools/xngen src/f16-gemm/1x8-aarch64-neonfp16arith-ld64.S.in -D INC=0 -o src/f16-gemm/gen/1x8-minmax-aarch64-neonfp16arith-ld64.S &
16tools/xngen src/f16-gemm/4x8-aarch64-neonfp16arith-ld64.S.in -D INC=0 -o src/f16-gemm/gen/4x8-minmax-aarch64-neonfp16arith-ld64.S &
17tools/xngen src/f16-gemm/6x8-aarch64-neonfp16arith-ld64.S.in -D INC=0 -o src/f16-gemm/gen/6x8-minmax-aarch64-neonfp16arith-ld64.S &
18tools/xngen src/f16-gemm/8x8-aarch64-neonfp16arith-ld64.S.in -D INC=0 -o src/f16-gemm/gen/8x8-minmax-aarch64-neonfp16arith-ld64.S &
19tools/xngen src/f16-gemm/1x8-aarch64-neonfp16arith-ld64.S.in -D INC=1 -o src/f16-gemm/gen-inc/1x8inc-minmax-aarch64-neonfp16arith-ld64.S &
20tools/xngen src/f16-gemm/4x8-aarch64-neonfp16arith-ld64.S.in -D INC=1 -o src/f16-gemm/gen-inc/4x8inc-minmax-aarch64-neonfp16arith-ld64.S &
21tools/xngen src/f16-gemm/6x8-aarch64-neonfp16arith-ld64.S.in -D INC=1 -o src/f16-gemm/gen-inc/6x8inc-minmax-aarch64-neonfp16arith-ld64.S &
22tools/xngen src/f16-gemm/8x8-aarch64-neonfp16arith-ld64.S.in -D INC=1 -o src/f16-gemm/gen-inc/8x8inc-minmax-aarch64-neonfp16arith-ld64.S &
Frank Barchard683f5592020-04-10 00:48:26 -070023
Frank Barchard80fc5f42021-06-07 10:43:16 -070024### Cortex A55 micro-kernels
Frank Barchardaae722a2021-08-30 12:37:30 -070025tools/xngen src/f16-gemm/6x16-aarch64-neonfp16arith-cortex-a55.S.in -D INC=0 -o src/f16-gemm/gen/6x16-minmax-aarch64-neonfp16arith-cortex-a55.S &
26tools/xngen src/f16-gemm/6x16-aarch64-neonfp16arith-cortex-a55.S.in -D INC=1 -o src/f16-gemm/gen-inc/6x16inc-minmax-aarch64-neonfp16arith-cortex-a55.S &
Frank Barchard80fc5f42021-06-07 10:43:16 -070027
Frank Barchard97374612021-06-07 11:51:07 -070028### Cortex A75 micro-kernels
Frank Barchardaae722a2021-08-30 12:37:30 -070029tools/xngen src/f16-gemm/6x16-aarch64-neonfp16arith-cortex-a75.S.in -D INC=0 -o src/f16-gemm/gen/6x16-minmax-aarch64-neonfp16arith-cortex-a75.S &
30tools/xngen src/f16-gemm/6x16-aarch64-neonfp16arith-cortex-a75.S.in -D INC=1 -o src/f16-gemm/gen-inc/6x16inc-minmax-aarch64-neonfp16arith-cortex-a75.S &
Frank Barchard97374612021-06-07 11:51:07 -070031
XNNPACK Teamb455b122019-09-27 18:10:33 -070032########################## ARM NEON with FP16 compute #########################
33### LD64 micro-kernels
Marat Dukhanc4302c22022-01-06 19:27:03 -080034tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=1 -D NR=8 -D INC=0 -o src/f16-gemm/gen/1x8-minmax-neonfp16arith-ld64.c &
35tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=4 -D NR=8 -D INC=0 -o src/f16-gemm/gen/4x8-minmax-neonfp16arith-ld64.c &
36tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=6 -D NR=8 -D INC=0 -o src/f16-gemm/gen/6x8-minmax-neonfp16arith-ld64.c &
37tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=8 -D NR=8 -D INC=0 -o src/f16-gemm/gen/8x8-minmax-neonfp16arith-ld64.c &
38tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=1 -D NR=8 -D INC=1 -o src/f16-gemm/gen-inc/1x8inc-minmax-neonfp16arith-ld64.c &
39tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=4 -D NR=8 -D INC=1 -o src/f16-gemm/gen-inc/4x8inc-minmax-neonfp16arith-ld64.c &
40tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=6 -D NR=8 -D INC=1 -o src/f16-gemm/gen-inc/6x8inc-minmax-neonfp16arith-ld64.c &
41tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=8 -D NR=8 -D INC=1 -o src/f16-gemm/gen-inc/8x8inc-minmax-neonfp16arith-ld64.c &
XNNPACK Teamb455b122019-09-27 18:10:33 -070042
Frank Barchardaae722a2021-08-30 12:37:30 -070043tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=1 -D NR=16 -D INC=0 -o src/f16-gemm/gen/1x16-minmax-neonfp16arith-ld64.c &
44tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=4 -D NR=16 -D INC=0 -o src/f16-gemm/gen/4x16-minmax-neonfp16arith-ld64.c &
45tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=6 -D NR=16 -D INC=0 -o src/f16-gemm/gen/6x16-minmax-neonfp16arith-ld64.c &
46tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=8 -D NR=16 -D INC=0 -o src/f16-gemm/gen/8x16-minmax-neonfp16arith-ld64.c &
47tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=1 -D NR=16 -D INC=1 -o src/f16-gemm/gen-inc/1x16inc-minmax-neonfp16arith-ld64.c &
48tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=4 -D NR=16 -D INC=1 -o src/f16-gemm/gen-inc/4x16inc-minmax-neonfp16arith-ld64.c &
49tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=6 -D NR=16 -D INC=1 -o src/f16-gemm/gen-inc/6x16inc-minmax-neonfp16arith-ld64.c &
50tools/xngen src/f16-gemm/neonfp16arith-ld64.c.in -D MR=8 -D NR=16 -D INC=1 -o src/f16-gemm/gen-inc/8x16inc-minmax-neonfp16arith-ld64.c &
Frank Barchard3f9f99f2020-05-06 01:12:04 -070051
Marat Dukhanc4302c22022-01-06 19:27:03 -080052################################### x86 AVX2 ###################################
53tools/xngen src/f16-gemm/avx2-broadcast.c.in -D MR=1 -D NR=8 -o src/f16-gemm/gen/1x8-minmax-avx2-broadcast.c &
54tools/xngen src/f16-gemm/avx2-broadcast.c.in -D MR=4 -D NR=8 -o src/f16-gemm/gen/4x8-minmax-avx2-broadcast.c &
55tools/xngen src/f16-gemm/avx2-broadcast.c.in -D MR=5 -D NR=8 -o src/f16-gemm/gen/5x8-minmax-avx2-broadcast.c &
56tools/xngen src/f16-gemm/avx2-broadcast.c.in -D MR=6 -D NR=8 -o src/f16-gemm/gen/6x8-minmax-avx2-broadcast.c &
57tools/xngen src/f16-gemm/avx2-broadcast.c.in -D MR=7 -D NR=8 -o src/f16-gemm/gen/7x8-minmax-avx2-broadcast.c &
58
59tools/xngen src/f16-gemm/avx2-broadcast.c.in -D MR=1 -D NR=16 -o src/f16-gemm/gen/1x16-minmax-avx2-broadcast.c &
60tools/xngen src/f16-gemm/avx2-broadcast.c.in -D MR=3 -D NR=16 -o src/f16-gemm/gen/3x16-minmax-avx2-broadcast.c &
61tools/xngen src/f16-gemm/avx2-broadcast.c.in -D MR=4 -D NR=16 -o src/f16-gemm/gen/4x16-minmax-avx2-broadcast.c &
62tools/xngen src/f16-gemm/avx2-broadcast.c.in -D MR=5 -D NR=16 -o src/f16-gemm/gen/5x16-minmax-avx2-broadcast.c &
63
XNNPACK Teamb455b122019-09-27 18:10:33 -070064################################## Unit tests #################################
Frank Barchardaae722a2021-08-30 12:37:30 -070065tools/generate-gemm-test.py --spec test/f16-gemm-minmax.yaml --output test/f16-gemm-minmax.cc &
66
67wait