aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add coordinate solvers for cornersh48-corner-estimateSebastiano Tronto2025-12-1913-2/+144
|
* Improve performance of H48 by 10-30% using interleaved fallback tables.Sebastiano Tronto2025-12-170-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (See the last 12 commits or so) H48 now uses interleaved fallback tables, similarly to nxopt / vcube. This allowed us to simplify the code (we don't use k != 2 anymore for H48) and gives some nice performance improvement, although repeated measurements show inconsistent results. The actual speed up depends on the table, and it is more pronounced on larger versions of the solver. The nasty part about using interleaved tables is that they are the most efficient when they are aligned in memory to 512 bits, but the core library defers memory management to the implementor, so there is no way to ensure this. For example, any application that wants to save the tables to a file and then re-load them on a subsequent run (such as our shell and tools) should make sure to load the data in a 512-bit aligned memory buffer. The best we can do on the library side having our main lookup table be 512-bit alinged within the whole solver data (which includes e.g. cocsepdata and a preamble). I have also moved some conditionals around in the various checks in the search dfs hoping to improve the performance further, but the results have been barely noticeable. The benchmarks have been updated. Moreover, there is now a way to re-run them with a single script (see the updates in the benchmarks folder for details). Further attempts at optimizing the code via known techniques (such as prefetching) have failed, but I'll come back to this.
* Clarified that results are in a <details>intertwined-fallback-tableSebastiano Tronto2025-12-171-1/+1
|
* Fix alignmentSebastiano Tronto2025-12-176-7/+53
|
* Improve pruning value fetching and re-do benchmarksSebastiano Tronto2025-12-1716-92/+110
|
* Cleanup mdSebastiano Tronto2025-12-172-19/+21
|
* Remove TODO section in docSebastiano Tronto2025-12-171-17/+0
|
* Update benchmarksSebastiano Tronto2025-12-1721-196/+450
|
* CleanupSebastiano Tronto2025-12-174-8/+8
|
* Move some checks around, small improvementSebastiano Tronto2025-12-171-11/+9
|
* Swap bit pairs in pval_minSebastiano Tronto2025-12-161-5/+4
|
* Update commentsSebastiano Tronto2025-12-142-5/+7
|
* Cleanup, update documentation, fix examplesSebastiano Tronto2025-12-1413-334/+231
|
* Bye bye h0k4Sebastiano Tronto2025-12-145-310/+27
|
* Intertwined table seems to workSebastiano Tronto2025-12-149-34/+178
|
* Updated h48 doc with recent improvementsSebastiano Tronto2025-11-251-5/+22
|
* Merge branch 'master' of tronto.net:nissy-coreSebastiano Tronto2025-11-2524-160/+309
|\
| * Fix duplicate solutions, overflow in maxsols and improve symmetry reduction ↵Sebastiano Tronto2025-11-2424-160/+309
| | | | | | | | | | | | | | | | | | | | | | | | for H48. 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.
| * Recovered comment that appeared only in removed fileSebastiano Tronto2025-09-251-1/+6
| |
* | Recovered comment that appeared only in removed fileSebastiano Tronto2025-11-231-1/+6
|/
* Updates to container runner and removed simd from wasm buildSebastiano Tronto2025-08-152-23/+42
|
* Added warning about build pythonSebastiano Tronto2025-08-131-0/+4
|
* More build.bat optionsSebastiano Tronto2025-08-133-4/+108
|
* Improvements to build.bat (unit tests on Windows)Sebastiano Tronto2025-08-134-20/+160
|
* Merge branch 'master' of tronto.net:nissy-coreSebastiano Tronto2025-08-132-20/+29
|\
| * Fix build help messageSebastiano Tronto2025-08-131-18/+19
| |
| * Added installation instructions for clang on windowsSebastiano Tronto2025-08-121-2/+10
| |
* | Correct OS detection for sleep functionSebastiano Tronto2025-08-131-1/+3
|/
* Renamed UNIX build script to build.sh, added info to README.md related to ↵Sebastiano Tronto2025-08-126-34/+46
| | | | windows build
* Removed Dockerfile (why was it still there?)Sebastiano Tronto2025-08-121-29/+0
|
* Added windows support via clangwindowsSebastiano Tronto2025-08-121-12/+15
|
* Merge branch 'master' of tronto.net:nissy-core into windowsSebastiano Tronto2025-08-121-5/+7
|\
| * Small improvemen to python exampleSebastiano Tronto2025-08-121-5/+7
| |
* | Merge branch 'master' of tronto.net:nissy-core into windowsSebastiano Tronto2025-08-124-2/+19
|\|
| * Some generic fixes, mainly for building on WindowsSebastiano Tronto2025-08-124-2/+19
| |
* | Merge branch 'master' of tronto.net:nissy-core into windowsSebastiano Tronto2025-08-121-1/+0
|\|
| * Remove pthread importSebastiano Tronto2025-08-121-1/+0
| |
* | Merge branch 'master' of https://github.com/sebastianotronto/nissy-core into ↵Sebastiano Tronto2025-08-1218-84/+154
|\| | | | | | | windows
| * Made H48 solver safer for 32bit size_tSebastiano Tronto2025-08-111-2/+9
| |
| * Fix function signatureSebastiano Tronto2025-08-112-2/+3
| |
| * Simplified name of Python moduleSebastiano Tronto2025-08-117-15/+21
| |
| * Wrapped pthread use in custom APISebastiano Tronto2025-08-119-65/+121
| |
* | Fixed build.batSebastiano Tronto2025-08-081-11/+11
| |
* | Initial commit for build.batSebastiano Tronto2025-08-081-0/+18
|/
* Small fixesSebastiano Tronto2025-08-084-6/+12
|
* Fix bug and make avx load consistentSebastiano Tronto2025-08-081-9/+9
|
* Added solver documentationSebastiano Tronto2025-08-082-1/+147
|
* Mention lastqt and unniss in description of nissy_variations()Sebastiano Tronto2025-08-071-1/+2
|
* Added solver aliasesSebastiano Tronto2025-08-0721-40/+72
|
* Added notes on possible performance improvements for H48Sebastiano Tronto2025-08-071-0/+20
|

Generated with cgit - Back to sebastiano.tronto.net