-
Notifications
You must be signed in to change notification settings - Fork 31
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2 changed files
with
26 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -53,14 +53,16 @@ Copyright (c) 2017, Nicolas ASSOUAD <[email protected]> | |
|
||
(** {2 Unsafe Data Structures} | ||
Some data structures have both a normal and an {b unsafe} version. The | ||
{b unsafe} version uses `Obj.magic`, which may be unsafe with flambda2 | ||
optimizations. | ||
The unsafe version is provided because certain optimizations require features | ||
not currently available in OCaml, such as arrays of atomics or atomic fields | ||
in records. It is recommended to use the normal version unless performance | ||
requirements necessitate the unsafe version. *) | ||
Some data structures have both a normal and an {b unsafe} version. The | ||
{b unsafe} version uses `Obj.magic`, which can be unsafe, especially with | ||
flambda2 optimizations. | ||
The unsafe version is provided to explore performance optimizations that | ||
require features not currently available in OCaml, such as arrays of atomics | ||
or atomic fields in records. These versions give an indication of the | ||
potential performance improvements when such features become available. | ||
It is recommended to use the normal version unless the performance | ||
requirements justify the risks associated with the unsafe version. *) | ||
|
||
(** {1 Data structures} *) | ||
|
||
|