Skip to content

Commit 1adbda8

Browse files
authored
Update readme (#64)
1 parent 5c411d8 commit 1adbda8

File tree

1 file changed

+43
-17
lines changed

1 file changed

+43
-17
lines changed

README.md

Lines changed: 43 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,60 @@
1-
# `HWCPipe 2.0`
1+
# About
22

3-
## Introduction
3+
HWCPipe is a utility that allows applications to sample performance counters from Arm® Immortalis™
4+
and Arm Mali™ GPUs. This information allows developers to profile and optimize their application
5+
workload using their existing in-house performance tooling, and gives the ability to display
6+
performance data live in the application user interface.
47

5-
Currently access to Hardware Counters is exposed via ioctl interfaces. That requires some knowledge
6-
about driver internals and sometimes about hardware itself. Software that needs to access Mali
7-
counters needs to interface with internals somwehow.
8+
The HWCPipe 2.x series is a major rewrite of the library, capable of exposing all of the public
9+
performance counters accessible in the Arm Streamline profiler. This version of the library
10+
is not API compatible with the 1.x series, and no longer supports Arm CPU performance counters.
811

9-
HWCPipe 2.0 is a second version of a currently existing open source solution maintained by Arm.
10-
Its aim is to support an up-to-date way to interface with the latest drivers. The library is
11-
intended to be more modular than its predecessor and support different use-cases while still
12-
exposing a simple API to access GPU counters.
12+
## Supported devices
1313

14-
## Building the Library
14+
This library aims to support all Arm GPU products from the Mali-T700 series onwards, ensuring
15+
developers have coverage of the vast majority of smartphones with Arm GPUs that are in use today.
16+
If you find a device with an Arm GPU which does not work, or gives inaccurate results, please open
17+
an Issue on the GitHub issue tracker.
1518

16-
The library is designed to be embedded into your existing CMake build process. Clone the GitHub
19+
This library only supports devices using the Arm commercial driver.
20+
21+
## License
22+
23+
This project is licensed under the MIT license. By downloading any component from this repository
24+
you acknowledge that you accept terms specified in the [LICENSE.md](LICENSE.md) file.
25+
26+
# Building
27+
28+
The HWCPipe library is designed to be embedded into existing CMake build process. Clone the GitHub
1729
repository and add it as a subdirectory to your CMakeLists.txt. A single library target, called
1830
`hwcpipe`, is made available for you to link to your project.
1931

20-
For example, your CMakeLists.txt could contain:
32+
For example, your `CMakeLists.txt` could contain:
33+
2134
```
2235
add_subdirectory(external/hwcpipe)
2336
target_link_libraries(my_project hwcpipe)
2437
```
2538

26-
## Building the Examples
39+
## Building the example
40+
41+
A small example demonstrating the API usage is provided in the `examples` folder. To build the
42+
example enable the `HWCPIPE_BUILD_EXAMPLES` CMake build option.
43+
44+
```
45+
cmake -DHWCPIPE_BUILD_EXAMPLES=ON -B build .
46+
```
47+
48+
# Support
49+
50+
If you have issues with the library itself, please raise them in the project's GitHub issue tracker.
51+
52+
If you have any questions about Arm GPUs, application development for Arm GPUs, or general mobile
53+
graphics development or technology please submit them on the [Arm Community graphics forums][1].
2754

28-
A short example of the API usage is provided in the `examples` folder. Enable the
29-
HWCPIPE_BUILD_EXAMPLES CMake option to build the example program with the library.
3055

31-
Run CMake from the root of the repository:
56+
- - -
3257

33-
```cmake -DHWCPIPE_BUILD_EXAMPLES=ON -B build .```
58+
_Copyright © 2023, Arm Limited and contributors. All rights reserved._
3459

60+
[1]: https://community.arm.com/support-forums/f/graphics-gaming-and-vr-forum/

0 commit comments

Comments
 (0)