<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nissy-core/src/utils, branch master</title>
<subtitle>The "engine" of nissy, including the H48 optimal solver.</subtitle>
<id>https://git.tronto.net/nissy-core/atom?h=master</id>
<link rel='self' href='https://git.tronto.net/nissy-core/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/'/>
<updated>2026-04-06T13:55:33Z</updated>
<entry>
<title>Make the project build with Microsoft's broken C compiler.</title>
<updated>2026-04-06T13:55:33Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2026-04-06T13:55:33Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=fc41f7917531693680b5baf71ffe38c47333fe84'/>
<id>urn:sha1:fc41f7917531693680b5baf71ffe38c47333fe84</id>
<content type='text'>
MSVC is not fully C11-compliant, even when compiling with /std:c11.
Some changes were needed to make the codebase compatible. Notably, the
notation a[static N] and a[n] for function parameters of array type is
not supported, so that had to be hidden behind a macro.  Atomic types
are also an experimental feature, apparently, but at least they work
with the correct compiler flag.

One thing that MSVC does well, however, is warning on integer conversions
on /W4 level. I am not sure if Clang and GCC have something similar,
so I took this chance to fix some of these.
</content>
</entry>
<entry>
<title>Improve Windows build support.</title>
<updated>2026-03-01T17:09:44Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2026-03-01T17:09:44Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=2c291aed4bb80f07e8557284d3399cf1e2a4ccb9'/>
<id>urn:sha1:2c291aed4bb80f07e8557284d3399cf1e2a4ccb9</id>
<content type='text'>
- Use multithreading (works with a sufficiently recent version of
  the Microsoft developer tools / C SDK).
- Detect CPU architecture and use AVX2 or NEON when appropriate.
- Automatically detect python installation path.
</content>
</entry>
<entry>
<title>Improve performance of H48 solver with prefetching</title>
<updated>2026-01-12T17:09:43Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2026-01-12T17:09:43Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=9a013b7c68f94e6be0fe8748c9012a441fe0273f'/>
<id>urn:sha1:9a013b7c68f94e6be0fe8748c9012a441fe0273f</id>
<content type='text'>
With this commit we re-structure how the node expansion in the
H48 solution search works to allow prefetching of pruning values,
showing performance improvements in the range of 30-45% on x86,
depending on table size and solution length.

A small bug fix related to appending solutions is included in this commit.
</content>
</entry>
<entry>
<title>Correct OS detection for sleep function</title>
<updated>2025-08-13T08:24:14Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2025-08-13T08:24:14Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=58deba64173679253e72495451853a668baf2452'/>
<id>urn:sha1:58deba64173679253e72495451853a668baf2452</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Some generic fixes, mainly for building on Windows</title>
<updated>2025-08-12T12:54:23Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2025-08-12T12:54:23Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=a82527e00fd535d0740deb45e39d041863116404'/>
<id>urn:sha1:a82527e00fd535d0740deb45e39d041863116404</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Wrapped pthread use in custom API</title>
<updated>2025-08-11T09:48:40Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2025-08-11T08:22:56Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=d25f23805c6d7128b508a359d47af136dd2fd0db'/>
<id>urn:sha1:d25f23805c6d7128b508a359d47af136dd2fd0db</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Added CPEPE coordinate in preparation of full DRFIN solver</title>
<updated>2025-08-01T14:52:44Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2025-08-01T14:52:44Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=1bd4691d9cc46ec75adbe899b289a1ebc5460721'/>
<id>urn:sha1:1bd4691d9cc46ec75adbe899b289a1ebc5460721</id>
<content type='text'>
</content>
</entry>
<entry>
<title>All coordinates unsigned</title>
<updated>2025-07-29T10:12:43Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2025-07-29T10:12:43Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=ea0387796a349c91032fbcb10f50c6ad8607b0f6'/>
<id>urn:sha1:ea0387796a349c91032fbcb10f50c6ad8607b0f6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Optimized some coordinates</title>
<updated>2025-07-29T08:00:56Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2025-07-29T08:00:56Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=38014615238a51f1c0c1f2f96d37cbfbf765520a'/>
<id>urn:sha1:38014615238a51f1c0c1f2f96d37cbfbf765520a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Tiny cleanup</title>
<updated>2025-07-28T12:18:29Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2025-07-28T12:18:29Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=3d6bc090c87a19c358a8b9025d3a2b62d77ab433'/>
<id>urn:sha1:3d6bc090c87a19c358a8b9025d3a2b62d77ab433</id>
<content type='text'>
</content>
</entry>
</feed>
