Skip to content

Commit

Permalink
update profiling API status (dotnet#47217)
Browse files Browse the repository at this point in the history
  • Loading branch information
davmason authored Jan 20, 2021
1 parent 10b45a5 commit 6a58b9c
Showing 1 changed file with 7 additions and 14 deletions.
21 changes: 7 additions & 14 deletions docs/project/profiling-api-status.md
Original file line number Diff line number Diff line change
@@ -1,27 +1,20 @@
# Status of CoreCLR Profiler APIs

The CoreCLR project started with the codebase from the .NET Framework so all the profiler APIs present there are also present in the code here. This is the status of our testing and porting efforts for these APIs.
Below is a table of the version of CoreCLR that profiler support and testing was completed. Profiling may work prior to these versions, but there may be bugs and missing features.

## Platform test coverage

- Windows on x86/x64/arm32
- Linux on x86/x64/arm32
- OSX
| | Windows | Linux | OSX |
| ----- | ------- | ----- | --- |
| x64 | 2.1 | 2.1 | 3.1 |
| x86 | 2.1 | N/A | N/A |
| arm32 | 3.1 | 3.1 | N/A |
| arm64 | 3.1 | 3.1 | TBA |

## Known issues

### DoStackSnapshot

The implementation of this API was making some questionable assumptions about Windows OS API behavior in order to walk callstacks asynchronously. When operating in this async mode we aren't yet confident we can produce reasonable implementations for other platforms. Our understanding is that most users of this API are attempting to do sample based profiling. If so we think it may be easier to offer a runtime provided event stream of sample callstacks to accomplish the same scenario without needing the API, but we also haven't heard any demand for it. Feedback welcome!

### ReJIT on ARM

ReJIT feature is only available on x86/x64 for now.

### Profiler Attach/Detach

We only support launch at the moment, see https://github.com/dotnet/runtime/issues/9886

### Any issues we missed?

Please let us know and we will get it addressed. Thanks!

0 comments on commit 6a58b9c

Please sign in to comment.