Skip to content

iBorna#212

Open
iBorna wants to merge 9 commits intotempestphp:mainfrom
iBorna:iBorna
Open

iBorna#212
iBorna wants to merge 9 commits intotempestphp:mainfrom
iBorna:iBorna

Conversation

@iBorna
Copy link

@iBorna iBorna commented Mar 1, 2026

No description provided.

@iBorna
Copy link
Author

iBorna commented Mar 1, 2026

/bench

@brendt
Copy link
Member

brendt commented Mar 1, 2026

Failed to run benchmark:

Cloning into '/Users/brentroose/Dev/100-million-row-challenge/app/Commands/../../.benchmark/pr-212'...
Installing dependencies from lock file
Verifying lock file contents can be installed on current platform.
Package operations: 62 installs, 0 updates, 0 removals
    0 [>---------------------------]    0 [->--------------------------]
  - Installing doctrine/lexer (3.0.1): Extracting archive
  - Installing guzzlehttp/promises (2.3.0): Extracting archive
  - Installing ralouphie/getallheaders (3.0.3): Extracting archive
  - Installing psr/http-message (2.0): Extracting archive
  - Installing psr/http-factory (1.1.0): Extracting archive
  - Installing guzzlehttp/psr7 (2.8.0): Extracting archive
  - Installing nette/utils (v4.1.3): Extracting archive
  - Installing nette/schema (v1.3.5): Extracting archive
  - Installing dflydev/dot-access-data (v3.0.3): Extracting archive
  - Installing league/config (v1.2.0): Extracting archive
  - Installing league/mime-type-detection (1.16.0): Extracting archive
  - Installing league/flysystem-local (3.31.0): Extracting archive
  - Installing league/flysystem (3.31.0): Extracting archive
  - Installing phpstan/phpstan (2.1.40): Extracting archive
  - Installing composer/semver (3.4.4): Extracting archive
  - Installing psr-discovery/discovery (1.2.0): Extracting archive
  - Installing psr/cache (3.0.0): Extracting archive
  - Installing symfony/cache-contracts (v3.6.0): Extracting archive
  - Installing psr/event-dispatcher (1.0.0): Extracting archive
  - Installing symfony/event-dispatcher-contracts (v3.6.0): Extracting archive
  - Installing symfony/event-dispatcher (v8.0.4): Extracting archive
  - Installing symfony/polyfill-mbstring (v1.33.0): Extracting archive
  - Installing symfony/polyfill-intl-normalizer (v1.33.0): Extracting archive
  - Installing symfony/polyfill-intl-idn (v1.33.0): Extracting archive
  - Installing symfony/mime (v8.0.5): Extracting archive
  - Installing symfony/polyfill-uuid (v1.33.0): Extracting archive
  - Installing symfony/deprecation-contracts (v3.6.0): Extracting archive
  - Installing psr/container (2.0.2): Extracting archive
  - Installing symfony/service-contracts (v3.6.1): Extracting archive
  - Installing voku/portable-ascii (2.0.3): Extracting archive
  - Installing symfony/polyfill-php80 (v1.33.0): Extracting archive
  - Installing symfony/polyfill-ctype (v1.33.0): Extracting archive
  - Installing phpoption/phpoption (1.9.5): Extracting archive
  - Installing graham-campbell/result-type (v1.1.4): Extracting archive
  - Installing vlucas/phpdotenv (v5.6.3): Extracting archive
  - Installing tempest/highlight (2.17.1): Extracting archive
  - Installing symfony/yaml (v7.4.1): Extracting archive
  - Installing symfony/var-exporter (v7.4.0): Extracting archive
  - Installing symfony/var-dumper (v7.4.4): Extracting archive
  - Installing symfony/uid (v7.4.4): Extracting archive
  - Installing symfony/process (v7.4.5): Extracting archive
  - Installing psr/log (3.0.2): Extracting archive
  - Installing egulias/email-validator (4.0.4): Extracting archive
  - Installing symfony/mailer (v7.4.4): Extracting archive
  - Installing symfony/filesystem (v7.4.0): Extracting archive
  - Installing symfony/cache (v7.4.5): Extracting archive
  - Installing rector/rector (2.3.1): Extracting archive
  - Installing psr/http-client (1.0.3): Extracting archive
  - Installing psr/clock (1.0.0): Extracting archive
  - Installing psr-discovery/http-factory-implementations (1.2.0): Extracting archive
  - Installing psr-discovery/http-client-implementations (1.4.0): Extracting archive
  - Installing nikic/php-parser (v5.7.0): Extracting archive
  - Installing nette/php-generator (v4.2.1): Extracting archive
  - Installing monolog/monolog (3.10.0): Extracting archive
  - Installing guzzlehttp/guzzle (7.10.0): Extracting archive
  - Installing league/oauth2-client (2.9.0): Extracting archive
  - Installing league/commonmark (2.8.0): Extracting archive
  - Installing laminas/laminas-diactoros (3.8.0): Extracting archive
  - Installing giggsey/libphonenumber-for-php-lite (9.0.24): Extracting archive
  - Installing filp/whoops (2.18.4): Extracting archive
  - Installing doctrine/inflector (2.1.0): Extracting archive
  - Installing tempest/framework (v3.2.1): Extracting archive
  0/62 [>---------------------------]   0%
 31/62 [==============>-------------]  50%
 45/62 [====================>-------]  72%
 53/62 [=======================>----]  85%
 58/62 [==========================>-]  93%
 62/62 [============================] 100%
Generating optimized autoload files
41 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
Benchmark 1: cd /Users/brentroose/Dev/100-million-row-challenge/app/Commands/../../.benchmark/pr-212 && php -dmax_execution_time=300 tempest data:parse --input-path="/Users/brentroose/Dev/100-million-row-challenge/app/Commands/../../data/real-data.csv" --output-path="/Users/brentroose/Dev/100-million-row-challenge/app/Commands/../../data/real-data-actual.json"

× // ErrorException
× // shmop_open(): Unable to attach or create shared memory segment "Cannot allocate memory"

In /Users/brentroose/Dev/100-million-row-challenge/.benchmark/pr-212/app/Parser.php:111

105         $cells = $pc * $dc;
106         $segSz = $cells * 2;
107         $pid0 = getmypid();
108         $shms = [];
109         $ok = true;
110         for ($w = 0; $w < self::W - 1; $w++) {
111             $shm = @shmop_open($pid0 * 100 + $w, 'c', 0600, $segSz);  <<<
112             if ($shm === false) {
113                 $ok = false;
114                 break;

#0 Tempest\Core\FrameworkKernel->{closure:Tempest\Core\FrameworkKernel::registerExceptionHandler():250}()
#1 /Users/brentroose/Dev/100-million-row-challenge/.benchmark/pr-212/app/Parser.php:111

   Run with -v to show more.

@iBorna
Copy link
Author

iBorna commented Mar 2, 2026

/bench

@brendt
Copy link
Member

brendt commented Mar 2, 2026

Benchmarking complete! Mean execution time: 2.88185513464s

@iBorna
Copy link
Author

iBorna commented Mar 4, 2026

/bench

@brendt
Copy link
Member

brendt commented Mar 4, 2026

Benchmarking complete! Mean execution time: 3.27546488668s

@iBorna
Copy link
Author

iBorna commented Mar 4, 2026

/bench

@brendt
Copy link
Member

brendt commented Mar 4, 2026

Benchmarking complete! Mean execution time: 3.1399645752s

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants