/ tests / parallel / t_ec_shortw_prj_g1_msm_parallel.nim
t_ec_shortw_prj_g1_msm_parallel.nim
 1  # Constantine
 2  # Copyright (c) 2018-2019    Status Research & Development GmbH
 3  # Copyright (c) 2020-Present Mamy André-Ratsimbazafy
 4  # Licensed and distributed under either of
 5  #   * MIT license (license terms in the root directory or at http://opensource.org/licenses/MIT).
 6  #   * Apache v2 license (license terms in the root directory or at http://www.apache.org/licenses/LICENSE-2.0).
 7  # at your option. This file may not be copied, modified, or distributed except according to those terms.
 8  
 9  import
10    # Internals
11    ../../constantine/math/config/curves,
12    ../../constantine/math/elliptic/ec_shortweierstrass_projective,
13    ../../constantine/math/arithmetic,
14    # Test utilities
15    ./t_ec_template_parallel
16  
17  const numPoints = [1, 2, 8, 16, 128, 1024, 2048, 16384] # 32768, 262144, 1048576]
18  
19  run_EC_multi_scalar_mul_parallel_impl(
20      ec = ECP_ShortW_Prj[Fp[BN254_Snarks], G1],
21      numPoints = numPoints,
22      moduleName = "test_ec_shortweierstrass_projective_multi_scalar_mul_" & $BN254_Snarks
23    )
24  
25  run_EC_multi_scalar_mul_parallel_impl(
26      ec = ECP_ShortW_Prj[Fp[BLS12_381], G1],
27      numPoints = numPoints,
28      moduleName = "test_ec_shortweierstrass_projective_multi_scalar_mul_" & $BLS12_381
29    )