The problem is that with v3.4 to 4.x the maximum supported password length went up from 64 (in theory) to 256. When using -a 0, all the data has been copied over pci-express. With 4.x, that size is 4 times as big as with 3.4. OTOH when using -a 3, it's all generated directly on GPU, there's no use of PCI-Express. Therefore your -a 3 speed is good, and your -a 0 is not. It also means there's no way of "fixing" this using code.
However, you can workaround the problem by using rules. If you use a small ruleset with 3-4 rules you should be able to compensate the problem.
If you have PCI-Express extender cable for your GPU this effect is even more visible. By removing them, the effect should reduce.
However, you can workaround the problem by using rules. If you use a small ruleset with 3-4 rules you should be able to compensate the problem.
Code:
hashcat64.exe -a 0 -m 2500 -w 4 -p : --status --status-timer=10 --nonce-error-corrections=0 --gpu-temp-disable -o "C:\8020_1517045065_found2500.txt" --outfile-format=3 "C:\8020_1517045065.hccapx" "C:\8x.dic" -r mini.rule
If you have PCI-Express extender cable for your GPU this effect is even more visible. By removing them, the effect should reduce.