Clearmatics Libsnark  0.1
C++ library for zkSNARK proofs
profile_ram_ppzksnark.cpp
Go to the documentation of this file.
1 
7 #include <algorithm>
8 #include <cstring>
9 #include <fstream>
10 #include <iostream>
11 #include <libff/common/profiling.hpp>
16 #include <sstream>
17 #include <string>
18 
19 using namespace libsnark;
20 
21 int main(int argc, const char *argv[])
22 {
24  libff::start_profiling();
25 
26  if (argc == 2 && strcmp(argv[1], "-v") == 0) {
27  libff::print_compilation_info();
28  return 0;
29  }
30 
31  if (argc != 6) {
32  printf(
33  "usage: %s word_size reg_count program_size input_size "
34  "time_bound\n",
35  argv[0]);
36  return 1;
37  }
38 
39  const size_t w = atoi(argv[1]), k = atoi(argv[2]),
40  program_size = atoi(argv[3]), input_size = atoi(argv[4]),
41  time_bound = atoi(argv[5]);
42 
44 
46 
47  libff::enter_block("Generate RAM example");
48  const size_t boot_trace_size_bound = program_size + input_size;
49  const bool satisfiable = true;
50  ram_example<machine_ppT> example = gen_ram_example_complex<machine_ppT>(
51  ap, boot_trace_size_bound, time_bound, satisfiable);
52  libff::leave_block("Generate RAM example");
53 
54  libff::print_header("(enter) Profile RAM ppzkSNARK");
55  const bool test_serialization = true;
56  run_ram_ppzksnark<default_ram_ppzksnark_pp>(example, test_serialization);
57  libff::print_header("(leave) Profile RAM ppzkSNARK");
58 }
tinyram_params.hpp
libsnark
Definition: accumulation_vector.hpp:18
run_ram_ppzksnark.hpp
libsnark::ram_example
Definition: ram_examples.hpp:21
libsnark::ram_ppzksnark_machine_pp
typename ram_ppzksnark_ppT::machine_pp ram_ppzksnark_machine_pp
Definition: ram_ppzksnark_params.hpp:64
ram_examples.hpp
libsnark::ram_ppzksnark_architecture_params
ram_architecture_params< ram_ppzksnark_machine_pp< ram_ppzksnark_ppT > > ram_ppzksnark_architecture_params
Definition: ram_ppzksnark_params.hpp:68
libsnark::ram_ppzksnark_snark_pp
typename ram_ppzksnark_ppT::snark_pp ram_ppzksnark_snark_pp
Definition: ram_ppzksnark_params.hpp:61
ram_ppzksnark_pp.hpp
main
int main(int argc, const char *argv[])
Definition: profile_ram_ppzksnark.cpp:21