From 2b9fa593a0a172bf36a02b5cdb840c6b9b361d7c Mon Sep 17 00:00:00 2001 From: Gunes Bayir Date: Wed, 17 Jan 2024 16:07:03 +0000 Subject: Use the stable CKW API in the GPU dynamic fusion backend - Refactor all kernels to work with the CKW stable API - Add support for sub-tile in the op_load/op_store CKW operator - Fix mismatch in resize - Add comments in all kernels written with CKW to help developers understand the structure of the code - Add texture image support in depthwise convolution written with CKW - Add support for different block sizes in depthwise convolution - Remove the use of the dynamic fusion helper functions. - Add support for floor in the op_unary() of CKW Resolves: COMPMID-6708, COMPMID-6743, COMPMID-6530 Signed-off-by: Gian Marco Iodice Signed-off-by: Gunes Bayir Signed-off-by: Viet-Hoa Do Signed-off-by: Jakub Sujak Change-Id: I8104ce4d04a3138a1aeb0b84940e1f1c89e76069 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/10914 Tested-by: Arm Jenkins Reviewed-by: Jakub Sujak Reviewed-by: Gunes Bayir Comments-Addressed: Arm Jenkins Benchmark: Arm Jenkins --- SConstruct | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'SConstruct') diff --git a/SConstruct b/SConstruct index e415b3469f..bad85e503d 100644 --- a/SConstruct +++ b/SConstruct @@ -169,7 +169,7 @@ install_path = env['install_dir'] if not env['install_dir'].startswith('/') and install_path != "": install_path = "%s/%s" % (build_path, install_path) -env.Append(LIBPATH = [build_path, os.path.join(build_path, "prototype")]) +env.Append(LIBPATH = [build_path, os.path.join(build_path, "")]) Export('env') Export('vars') @@ -439,15 +439,14 @@ if env['experimental_dynamic_fusion']: CKW_ENABLE_ASSERTS = env['debug'] or env['asserts'] CKW_PROJECT_DIR = Dir('.').path + "/compute_kernel_writer" - CKW_INCLUDE_DIR = CKW_PROJECT_DIR + "/prototype/include" + CKW_INCLUDE_DIR = CKW_PROJECT_DIR + "/include" CKW_BUILD_DIR = build_path.replace("#", "") CKW_CMAKE_CMD = "CC={CKW_CC} CXX={CKW_CXX} cmake -G \"Unix Makefiles\" " \ "-S {CKW_PROJECT_DIR} -B {CKW_BUILD_DIR} " \ "-DCMAKE_BUILD_TYPE={CKW_BUILD_TYPE} " \ - "-DCKW_ENABLE_OPENCL={CKW_ENABLE_OPENCL} " \ + "-DCKW_ENABLE_OPENCL=ON " \ "-DCKW_ENABLE_ASSERTS={CKW_ENABLE_ASSERTS} " \ - "-DCKW_BUILD_PROTOTYPE=ON " \ "-DCKW_CCACHE={CKW_CCACHE} ".format(CKW_CC=CKW_CC, CKW_CXX=CKW_CXX, CKW_PROJECT_DIR=CKW_PROJECT_DIR, @@ -460,7 +459,7 @@ if env['experimental_dynamic_fusion']: # Configure CKW static objects with -fPIC (CMAKE_POSITION_INDEPENDENT_CODE) option to enable linking statically to ACL CKW_CMAKE_CONFIGURE_STATIC = CKW_CMAKE_CMD + "-DBUILD_SHARED_LIBS=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON" - CKW_CMAKE_BUILD = "cmake --build {CKW_BUILD_DIR} --target ckw_prototype -j{NUM_JOBS}".format(CKW_BUILD_DIR=CKW_BUILD_DIR, + CKW_CMAKE_BUILD = "cmake --build {CKW_BUILD_DIR} --target ckw -j{NUM_JOBS}".format(CKW_BUILD_DIR=CKW_BUILD_DIR, NUM_JOBS=GetOption('num_jobs') ) -- cgit v1.2.1