mirror of
https://github.com/arnaucube/circom.git
synced 2026-02-06 18:56:40 +01:00
Optimize optimize constraints not BigArray for small circuits
This commit is contained in:
@@ -341,7 +341,11 @@ async function reduceConstrains(ctx) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
while (possibleConstraints.length >0) {
|
while (possibleConstraints.length >0) {
|
||||||
nextPossibleConstraints = new BigArray();
|
if (possibleConstraints.length>1<<20) {
|
||||||
|
nextPossibleConstraints = new BigArray();
|
||||||
|
} else {
|
||||||
|
nextPossibleConstraints = {};
|
||||||
|
}
|
||||||
removedSignals = new BigArray();
|
removedSignals = new BigArray();
|
||||||
nRemoved = 0;
|
nRemoved = 0;
|
||||||
lIdx = new BigArray();
|
lIdx = new BigArray();
|
||||||
@@ -404,7 +408,11 @@ async function reduceConstrains(ctx) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
nextPossibleConstraints = nextPossibleConstraints.getKeys();
|
if (nextPossibleConstraints.getKeys) {
|
||||||
|
nextPossibleConstraints = nextPossibleConstraints.getKeys();
|
||||||
|
} else {
|
||||||
|
nextPossibleConstraints = Object.keys(nextPossibleConstraints);
|
||||||
|
}
|
||||||
|
|
||||||
for (let i=0; i<nextPossibleConstraints.length;i++) {
|
for (let i=0; i<nextPossibleConstraints.length;i++) {
|
||||||
if ((ctx.verbose)&&(i%10000 == 0)) {
|
if ((ctx.verbose)&&(i%10000 == 0)) {
|
||||||
@@ -440,12 +448,14 @@ async function reduceConstrains(ctx) {
|
|||||||
lSignal.c = ctx.stDISCARDED;
|
lSignal.c = ctx.stDISCARDED;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
possibleConstraints = new BigArray();
|
possibleConstraints = new BigArray();
|
||||||
|
|
||||||
// Reverse
|
// Reverse
|
||||||
for (let i=0; i<nextPossibleConstraints.length; i++) {
|
for (let i=0; i<nextPossibleConstraints.length; i++) {
|
||||||
possibleConstraints[i] = nextPossibleConstraints[nextPossibleConstraints.length -1 -i];
|
possibleConstraints[i] = nextPossibleConstraints[nextPossibleConstraints.length -1 -i];
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
possibleConstraints = nextPossibleConstraints;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user