debug
This commit is contained in:
37
include/condorcet/Benchmarks/AddVotesBench.php
Normal file
37
include/condorcet/Benchmarks/AddVotesBench.php
Normal file
@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace CondorcetPHP\Condorcet\Benchmarks;
|
||||
|
||||
use CondorcetPHP\Condorcet\Election;
|
||||
use PhpBench\Attributes as Bench;
|
||||
|
||||
ini_set('memory_limit', '51200M');
|
||||
|
||||
class AddVotesBench
|
||||
{
|
||||
protected Election $election;
|
||||
|
||||
#[Bench\OutputTimeUnit('seconds')]
|
||||
#[Bench\Warmup(1)]
|
||||
#[Bench\Iterations(3)]
|
||||
#[Bench\Revs(1)]
|
||||
public function benchVotesWithManyCandidates(): void
|
||||
{
|
||||
$randomizer = new \Random\Randomizer(new \Random\Engine\Xoshiro256StarStar('CondorcetReproductibleRandomSeed'));
|
||||
|
||||
$this->election = $election = new Election;
|
||||
|
||||
$candidates = [];
|
||||
|
||||
for ($i=0; $i < 100; $i++) {
|
||||
$candidates[] = $election->addCandidate();
|
||||
}
|
||||
|
||||
for ($i = 0; $i < 1_000; $i++) {
|
||||
$oneVote = $randomizer->shuffleArray($candidates);
|
||||
$election->addVote($oneVote);
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user