scipr-lab / libsnark

C++ library for zkSNARKs
Other
1.81k stars 572 forks source link

Unable to stop stdout from flooding screen #148

Closed derekzx closed 5 years ago

derekzx commented 5 years ago

Generating any gadget will flood my stdout with multiple output showing how the constraint system is generated. Is there any way to stop the stdout from being flooded?

Example:

       (enter) Call to alt_bn128_exp_by_neg_z            [             ] (12340.4238s x0.00 from start)
              (leave) Call to alt_bn128_exp_by_neg_z            [0.0012s x0.99] (12340.4249s x0.00 from start)
            (leave) Call to alt_bn128_final_exponentiation_last_chunk   [0.0123s x0.30] (12340.4252s x0.00 from start)
          (leave) Call to alt_bn128_final_exponentiation        [0.0126s x0.31] (12340.4252s x0.00 from start)
        (leave) Check same coefficients were used       [0.0202s x0.53] (12340.4252s x0.00 from start)
      (leave) Online pairing computations               [0.0878s x0.61] (12340.4252s x0.00 from start)
    (leave) Call to r1cs_ppzksnark_online_verifier_weak_IC      [0.0879s x0.61] (12340.4252s x0.00 from start)
  (leave) Call to r1cs_ppzksnark_online_verifier_strong_IC      [0.1014s x0.53] (12340.4253s x0.00 from start)
(leave) Call to r1cs_ppzksnark_verifier_strong_IC       [0.1084s x0.55] (12340.4253s x0.00 from start)
dcmiddle commented 5 years ago

Hi, I ran into that too. I found that you can squelch the libff profiling output by setting this global within your own application like this: libff::inhibit_profiling_info = true;

There are other counter outputs that come from a multiexp.tcc that has been copied around a few places. There's no build or runtime conditionals around those so you have to comment them out manually in your own dependency tree.

Hope that helps, Dan

derekzx commented 5 years ago

Thank you very much for the help