Skip to content

Commit 32e9a31

Browse files
authored
Merge pull request #556 from ocaml-multicore/readme-updates
Misc. README updates
2 parents 69b8bf3 + f287475 commit 32e9a31

1 file changed

Lines changed: 14 additions & 4 deletions

File tree

README.md

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ Multicore tests
4848
[![MSVC 5.5.0+trunk](https://github.com/ocaml-multicore/multicoretests/actions/workflows/msvc-550-trunk.yml/badge.svg)](https://github.com/ocaml-multicore/multicoretests/actions/workflows/msvc-550-trunk.yml)
4949
[![MSVC 5.5.0+trunk-bytecode](https://github.com/ocaml-multicore/multicoretests/actions/workflows/msvc-550-trunk-bytecode.yml/badge.svg)](https://github.com/ocaml-multicore/multicoretests/actions/workflows/msvc-550-trunk-bytecode.yml)
5050

51-
Property-based tests of (parts of) the OCaml multicore compiler and run time.
51+
Property-based tests of the OCaml multicore compiler and run time.
5252

5353
This project contains
5454
- a randomized test suite of OCaml 5.x, packaged up in `multicoretests.opam`
@@ -59,8 +59,12 @@ This project contains
5959
All of the above build on [QCheck](https://github.com/c-cube/qcheck),
6060
a black-box, property-based testing library in the style of QuickCheck.
6161

62-
The two libraries are [already quite helpful](https://tarides.com/blog/2022-12-22-ocaml-5-multicore-testing-tools)
63-
62+
The two libraries are further described below, in three blog posts, and in a
63+
2022 OCaml Workshop paper:
64+
- [Under the Hood: Developing Multicore Property-Based Tests for OCaml 5](https://tarides.com/blog/2024-04-24-under-the-hood-developing-multicore-property-based-tests-for-ocaml-5/)
65+
- [Multicore Property-Based Tests for OCaml 5: Challenges and Lessons Learned](https://tarides.com/blog/2024-12-23-multicore-property-based-tests-for-ocaml-5-challenges-and-lessons-learned/)
66+
- [OCaml 5 Multicore Testing Tools](https://tarides.com/blog/2022-12-22-ocaml-5-multicore-testing-tools)
67+
- [Multicoretests - Parallel Testing Libraries for OCaml 5.0](doc/paper.pdf)
6468

6569

6670
Installation instructions, and running the tests
@@ -405,6 +409,11 @@ property can be done in two different ways:
405409
it to only perform repetition during shrinking. (Pro: each test is
406410
cheaper so we can run more, Con: more tests are required to trigger a race)
407411

412+
Since [PR#540](https://github.com/ocaml-multicore/multicoretests/pull/540) the
413+
`Lin_thread` and `STM_thread` modes both utilize a `Gc.Memprof` callback to
414+
trigger more frequent context switching at allocation points, effectively
415+
increasing the chance of surfacing `Thread`-based concurrency issues.
416+
408417

409418
Issues
410419
======
@@ -429,7 +438,7 @@ Replacing blocking functions by non-blocking ones caused deadlocks (new, fixed,
429438
----------------------------------------------------------------------------------------
430439

431440
[A recently merged PR](https://github.com/ocaml/ocaml/pull/13227) replacing blocking functions
432-
by unblocking ones caused [a regression in the form of deadlocks in the parallel `Sys` STM test](https://github.com/ocaml/ocaml/issuess/13713).
441+
by unblocking ones caused [a regression in the form of deadlocks in the parallel `Sys` STM test](https://github.com/ocaml/ocaml/issues/13713).
433442

434443

435444
Unboxed `Dynarray` STM tests segfaults (new, fixed, runtime)
@@ -859,3 +868,4 @@ let () = Task.teardown_pool pool
859868
---
860869

861870
This project has been created by <a href="https://tarides.com/">Tarides</a>.
871+
It is now maintained with support from the [OCaml Software Foundation](https://ocaml-sf.org/).

0 commit comments

Comments
 (0)