<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nissy-core/src/solvers/solutions.h, branch c-portability</title>
<subtitle>The "engine" of nissy, including the H48 optimal solver.</subtitle>
<id>https://git.tronto.net/nissy-core/atom?h=c-portability</id>
<link rel='self' href='https://git.tronto.net/nissy-core/atom?h=c-portability'/>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/'/>
<updated>2026-04-06T13:48:54Z</updated>
<entry>
<title>Fix integer conversions in code, tests and some tools</title>
<updated>2026-04-06T13:48:54Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2026-04-06T13:48:54Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=a1ad0db8a6d829eddf1478cee44ae976bbcd325f'/>
<id>urn:sha1:a1ad0db8a6d829eddf1478cee44ae976bbcd325f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fixes for Microsoft's stupid broken compiler</title>
<updated>2026-04-06T08:28:50Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2026-04-06T08:28:50Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=6c4453fdc49e700969bc465e365dd610d7e137c2'/>
<id>urn:sha1:6c4453fdc49e700969bc465e365dd610d7e137c2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use macro for [static N]</title>
<updated>2026-04-04T10:02:56Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2026-04-04T10:02:56Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=e6be287bbfa6beda038ec8b085300c5dc9c2ecd8'/>
<id>urn:sha1:e6be287bbfa6beda038ec8b085300c5dc9c2ecd8</id>
<content type='text'>
</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>Fix duplicate solutions, overflow in maxsols and improve symmetry reduction for H48.</title>
<updated>2025-11-24T15:32:11Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2025-11-23T15:16:31Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=147b0c3c4615c32478a4923242909b8ae5a30d03'/>
<id>urn:sha1:147b0c3c4615c32478a4923242909b8ae5a30d03</id>
<content type='text'>
This commit fixes two bugs:
  - A bug that caused duplicates solutions for symmetric scrambles.
  - An overflow in the maxsols parameter for the H48 solver, which
    caused it to find much fewer solutions than existed.

Moreover, the H48 solvers has been improved by reducing by symmetry not
only from the starting position, but also up to the first 4 moves.
</content>
</entry>
<entry>
<title>Added API function for solution variations</title>
<updated>2025-08-07T13:28:01Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2025-08-07T13:09:46Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=5355de2921126e2b75e24abd57e17556e22a6ed0'/>
<id>urn:sha1:5355de2921126e2b75e24abd57e17556e22a6ed0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix bug</title>
<updated>2025-07-31T11:09:42Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2025-07-31T11:09:42Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=bf3497420c9a12397dc13a34faf3ce3e456f3aa7'/>
<id>urn:sha1:bf3497420c9a12397dc13a34faf3ce3e456f3aa7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fixed bug with counting solutions for coordinate solver</title>
<updated>2025-07-30T14:35:25Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2025-07-30T14:35:25Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=36c317ebd1cf1dba8a8cbec494f4d3971e6cefd3'/>
<id>urn:sha1:36c317ebd1cf1dba8a8cbec494f4d3971e6cefd3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Cleanup some TODOs</title>
<updated>2025-07-29T08:55:29Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2025-07-29T08:55:29Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=52c21640508c3fc668107778ae027ff4428ebd89'/>
<id>urn:sha1:52c21640508c3fc668107778ae027ff4428ebd89</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Removed VLA notation from function parameters.</title>
<updated>2025-05-27T07:03:51Z</updated>
<author>
<name>Sebastiano Tronto</name>
<email>sebastiano@tronto.net</email>
</author>
<published>2025-05-27T07:03:51Z</published>
<link rel='alternate' type='text/html' href='https://git.tronto.net/nissy-core/commit/?id=7c934801f88c640970ad41b5ddd39f4e39609f28'/>
<id>urn:sha1:7c934801f88c640970ad41b5ddd39f4e39609f28</id>
<content type='text'>
I found out that this gives undefined behavior when then size is 0.
Better not to have it at all, it is confusing for other developers anyway.
</content>
</entry>
</feed>
