diff options
Diffstat (limited to 'docs/ComputeLibrary.dir')
-rw-r--r-- | docs/ComputeLibrary.dir | 303 |
1 files changed, 303 insertions, 0 deletions
diff --git a/docs/ComputeLibrary.dir b/docs/ComputeLibrary.dir new file mode 100644 index 0000000000..ab9dfc1b93 --- /dev/null +++ b/docs/ComputeLibrary.dir @@ -0,0 +1,303 @@ +// +// Copyright © 2020,2022 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// + +// The following files are omitted due to technical limitations: +// Directories : data, include, python +// Files : LICENSE, README.md, SConscript, SConstruct, Security.md, filelist.json, filedefs.json + +/** @file Android.bp + * @brief Generation script for building AndroidNN driver. + */ + +/** @dir arm_compute + * @brief All the arm_compute headers. + */ + +/** @dir arm_compute/core + * @brief Core module: common basic types and kernels. + */ + +/** @dir arm_compute/core/CL + * @brief OpenCL backend core: kernels and utilities. + */ + +/** @file arm_compute/core/CL/CLKernelLibrary.h + * @brief Manages all the OpenCL kernels compilation and caching, provides accessors for the OpenCL Context. + */ + +/** @file arm_compute/core/CL/OpenCL.h + * @brief Wrapper to configure the Khronos OpenCL C++ header + */ + +/** @dir arm_compute/core/CPP + * @brief CPP backend core: kernels and utilities. + */ + +/** @file arm_compute/core/CPP/CPPKernels.h + * @brief Includes all the CPP kernels at once + */ + +/** @dir arm_compute/core/CPP/kernels + * @brief Folder containing all the CPP kernels + */ + +/** @dir arm_compute/core/experimental + * @brief All experimental interfaces + */ + +/** @dir src/core/NEON + * @brief Arm® Neon™ backend core: kernels and utilities. + */ + +/** @file src/core/NEON/NEKernels.h + * @brief Includes all the Arm® Neon™ kernels at once + */ + +/** @dir src/core/NEON/kernels + * @brief Folder containing all the Arm® Neon™ kernels + */ + +/** @dir arm_compute/core/utils + * @brief Common core utilities. + */ + +/** @dir arm_compute/graph + * @brief Graph API. + */ + +/** @dir arm_compute/graph/algorithms + * @brief Generic algorithms used by the graph backend (e.g Order of traversal) + */ + +/** @dir arm_compute/graph/backends + * @brief The backend specific code + */ + +/** @dir arm_compute/graph/backends/CL + * @brief OpenCL specific operations + */ + +/** @dir arm_compute/graph/backends/NEON + * @brief Arm® Neon™ specific operations + */ + +/** @dir arm_compute/graph/detail + * @brief Collection of internal utilities. + */ + +/** @dir arm_compute/graph/frontend + * @brief Code related to the stream frontend interface. + */ + +/** @dir arm_compute/graph/mutators + * @brief Used to modify / optimise the Graph intermediate representation(Operator fusion, in place operations, etc.) + */ + +/** @dir arm_compute/graph/nodes + * @brief The various nodes supported by the graph API. + */ + +/** @dir arm_compute/graph/printers + * @brief Debug printers. + */ + +/** @file arm_compute/graph.h + * @brief Includes all the Graph headers at once. + */ + +/** @dir arm_compute/runtime + * @brief Runtime interface: memory, scheduler, functions. + */ + +/** @dir arm_compute/runtime/CL + * @brief OpenCL backend runtime interface. + */ + +/** @file arm_compute/runtime/CL/CLFunctions.h + * @brief Includes all the OpenCL functions at once + */ + +/** @file arm_compute/runtime/CL/CLScheduler.h + * @brief Interface to enqueue OpenCL kernels and get/set the OpenCL CommandQueue and ICLTuner. + */ + +/** @file arm_compute/runtime/CL/ICLTuner.h + * @brief Interface used to tune the local work-group size of OpenCL kernels. + */ + +/** @dir arm_compute/runtime/CL/functions + * @brief Folder containing all the OpenCL functions. + */ + +/** @dir arm_compute/runtime/CL/tuners + * @brief Local workgroup size tuners for specific architectures / GPUs. + */ + +/** @dir arm_compute/runtime/CPP + * @brief CPP backend runtime interface. + */ + +/** @file arm_compute/runtime/CPP/CPPScheduler.h + * @brief Basic pool of threads to execute CPP/Neon code on several cores in parallel. + */ + +/** @dir arm_compute/runtime/CPP/functions + * @brief Folder containing all the CPP functions. + */ + +/** @dir arm_compute/runtime/experimental + * @brief Experimental runtime interface. + */ + +/** @dir arm_compute/runtime/NEON + * @brief Arm® Neon™ backend runtime interface. + */ + +/** @file arm_compute/runtime/NEON/NEFunctions.h + * @brief Includes all the Arm® Neon™ functions at once. + */ + +/** @dir arm_compute/runtime/NEON/functions + * @brief Folder containing all the Arm® Neon™ functions. + */ + +/** @dir arm_compute/runtime/OMP + * @brief OpenMP backend runtime interface. + */ + +/** @file arm_compute/runtime/OMP/OMPScheduler.h + * @brief OpenMP scheduler (Alternative to the CPPScheduler). + */ + +/** @dir arm_compute/runtime/common + * @brief Common utility code used by all backends. + */ + +/** @dir docs + * @brief Doxyfile and Doxygen sources used to generate this documentation. + */ + +/** @dir ./examples + * @brief Set of examples using the Compute Library + * + * @details Examples have the following structure: + * + * -# cl_*.cpp --> OpenCL examples + * -# graph_*.cpp --> Graph examples + * -# neoncl_*.cpp --> Arm® Neon™ / OpenCL interoperability examples + * -# neon_*.cpp --> Arm® Neon™ examples + */ + +/** @dir examples/gemm_tuner + * @brief OpenCL GEMM tuner utility. + */ + +/** @dir scripts + * @brief Utility scripts. + */ + +/** @dir src + * @brief Source code implementing all the arm_compute headers. + */ + +/** @dir src/core/NEON/kernels/detail + * @brief Common code for several intrinsics implementations. + */ + +/** @dir src/core/NEON/wrapper + * @brief Arm® Neon™ wrapper used to simplify code + */ + +/** @file src/core/NEON/wrapper/traits.h + * @brief Traits defined on Arm® Neon™ vectors + */ + +/** @file src/core/NEON/wrapper/wrapper.h + * @brief Includes all wrapper headers at once + */ + +/** @dir src/core/NEON/wrapper/intrinsics + * @brief Arm® Neon™ intrinsics wrappers + */ + +/** @dir src/core/NEON/wrapper/scalar + * @brief Scalar operations + */ + +/** @dir src/gpu/cl/kernels/gemm + * @brief Folder containing all the configuration files for GEMM + */ + +/** @dir src/core/CL/kernels + * @brief All the OpenCL kernels + */ + +/** @dir support + * @brief Various headers to work around toolchains / platform issues. + */ + +/** @dir tests + * @brief All test related files shared between validation and benchmark. + */ + +/** @file tests/main.cpp + * @brief Main entry point for the tests. Currently shared between validation and benchmarking. + */ + +/** @dir tests/CL + * @brief OpenCL accessors. + */ + +/** @dir tests/NEON + * @brief Arm® Neon™ accessors. + */ + +/** @dir tests/benchmark + * @brief Sources for benchmarking. + */ + +/** @dir tests/benchmark/CL + * @brief OpenCL benchmarking tests. + */ + +/** @dir tests/benchmark/NEON + * @brief Arm® Neon™ benchmarking tests. + */ + +/** @dir tests/benchmark_examples + * @brief Sources needed to wrap examples to run through our benchmarking framework. + */ + +/** @dir tests/framework + * @brief Boiler plate code for both validation and benchmark test suites (Command line parsers, instruments, output loggers, etc.) + */ + +/** @dir tests/instruments + * @brief User defined instruments that can be registered to the framework. + */ + +/** @dir tests/validate_examples + * @brief Sources needed to wrap examples to run through our validation framework. + */ + +/** @dir tests/validation + * @brief Source for validation. + */ + +/** @dir tests/validation/CL + * @brief OpenCL validation tests. + */ + +/** @dir tests/validation/CPP + * @brief C++ validation tests. + */ + +/** @dir tests/validation/NEON + * @brief Arm® Neon™ validation tests. + */ + +/** @dir tests/validation/reference + * @brief Reference implementation used to validate the results of the various backends. + */ |