Admin message

Due to a large amount of spam we do not allow new users to create repositories, they are "external" users. If you are a new user and want to create a repository, for example for forking GHC, open a new issue on ghc/ghc using the "get-verified" issue template

Significant decrease in throughput with cfinalizer of ForeignPtr
ForeignPtr and cfinalizer are essential for handling c++ objects with ghc. However using cfinalizer cuts the throughput in half. ghc version is 9.4.2. https://github.com/junjihashimoto/ffi-benchmark In this example, ForeignPtr_ without cfinalizer takes 60ns, and ForeignPtr with cfinalizer takes 150ns. I tried to eliminate the influence of the internal weak pointer lock, but it(CForeignPtr without lock) takes 130ns. I think there is also an influence of gc, but is it possible to reduce this overhead? This is an image capture of the criterion in the above repository. ForeignPtr_ does not use cfinalizer. It's a typo. ![image](/uploads/16b4591d062aabd3866850b7ebae22df/image.png)
issue