Re: [MLton] Status of arm64-darwin mlton ?
Bernard Berthomieu <[email protected]> Wed, 7 Sep 2022 19:28:01 +0200
| Newsgroups | gmane.comp.lang.ml.mlton.devel |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format.
--===============6564503045308311622==
Content-Type: multipart/alternative;
boundary="------------H1s3KjQyfyvpKkxiCcEaiybU"
Content-Language: en-US
This is a multi-part message in MIME format.
--------------H1s3KjQyfyvpKkxiCcEaiybU
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Follow up:
On 28/07/2022 21:31, Bernard Berthomieu wrote:
> (Trying to bootstrap arm64-darwin mlton on Apple Silicon Christopher's
> way)
>
> ... The only issue so far is
> a minor type translation problem uncovered in FFI. I'll document the
> experiment after this problem is solved.
Problem solved, it was not related to arm64 but to FFI vs C Codegen.
Thanks to Matthew for his help solving it.
I added links to my M1 builds to the page we maintain for our local
mlton users
at www.laas.fr/tina/software; hope this helps. There is a link to that page
on http://mlton.org/Release20210117 too.
> On 22/07/2022 16:48, Matthew Fluet wrote:
>> ...
>> * You need to arrange for the "old" (amd64) MLton to find and
>> dynamically link to an amd64 version of GMP, while the "new" (arm64)
>> MLton will need to find and dynamically link to an arm64 version of GMP.
In short, gmp issues were avoided by linking statically mlton and the
executables it
generates as well against gmp, both for the amd64-darwin mlton we
bootstrap from and
for the arm64-darwin mlton we build. From this fully gmp-static arm64
mlton, one can
easily bootstrap in turn a gmp-dynamic version, if desired.
The full details can be found at www.laas.fr/tina/howto-arm64-darwin.html.
Preliminary tests show a speed improvement of about 25% for the arm64
code generated
over amd64 code translated by Rosetta2.
All comments welcome,
Bernard.
--------------H1s3KjQyfyvpKkxiCcEaiybU
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
Follow up:<br>
<br>
<div class="moz-cite-prefix">On 28/07/2022 21:31, Bernard Berthomieu
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:[email protected]">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
(Trying to bootstrap arm64-darwin mlton on Apple Silicon
Christopher's way)<br>
<br>
... The only issue so far is<br>
a minor type translation problem uncovered in FFI. I'll document
the<br>
experiment after this problem is solved.<br>
</blockquote>
<br>
Problem solved, it was not related to arm64 but to FFI vs C Codegen.<br>
Thanks to Matthew for his help solving it.<br>
<br>
I added links to my M1 builds to the page we maintain for our local
mlton users<br>
at <a class="moz-txt-link-abbreviated"
href="http://www.laas.fr/tina/software">www.laas.fr/tina/software</a>;
hope this helps. There is a link to that page<br>
on <a class="moz-txt-link-freetext"
href="http://mlton.org/Release20210117">http://mlton.org/Release20210117</a>
too.<br>
<br>
<blockquote type="cite"
cite="mid:[email protected]">
<div class="moz-cite-prefix">On 22/07/2022 16:48, Matthew Fluet
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CAMrhFL6VK5oP=bN=CMXQMjipKCBNRh7WeOGhcN6ob+N=aRwuCQ@mail.gmail.com">
<div dir="ltr">...
<div class="gmail_default"
style="font-family:arial,sans-serif;font-size:large">* You
need to arrange for the "old" (amd64) MLton to find and
dynamically link to an amd64 version of GMP, while the "new"
(arm64) MLton will need to find and dynamically link to an
arm64 version of GMP.</div>
</div>
</blockquote>
</blockquote>
<br>
In short, gmp issues were avoided by linking statically mlton and
the executables it<br>
generates as well against gmp, both for the amd64-darwin mlton we
bootstrap from and<br>
for the arm64-darwin mlton we build. From this fully gmp-static
arm64 mlton, one can<br>
easily bootstrap in turn a gmp-dynamic version, if desired.<br>
The full details can be found at <a
class="moz-txt-link-abbreviated"
href="http://www.laas.fr/tina/howto-arm64-darwin.html">www.laas.fr/tina/howto-arm64-darwin.html</a>.<br>
<br>
Preliminary tests show a speed improvement of about 25% for the
arm64 code generated<br>
over amd64 code translated by Rosetta2.<br>
<br>
All comments welcome,<br>
Bernard.<br>
<br>
</body>
</html>
--------------H1s3KjQyfyvpKkxiCcEaiybU--
--===============6564503045308311622==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
--===============6564503045308311622==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
_______________________________________________
MLton-devel mailing list
[email protected]; [email protected]
https://lists.sourceforge.net/lists/listinfo/mlton-devel
--===============6564503045308311622==--