Page MenuHomePhabricator

Performance Spike: Create a Pool of "Hot" Executor Processes to Eliminate wasmedge Startup Costs
Closed, ResolvedPublic

Description

Description

Our runtime analysis has revealed that, at the moment, the biggest bottleneck for function calls is related to starting the wasmedge processes.

Desired behavior/Acceptance criteria (returned value, expected error, performance expectations, etc.)

  • create an abstraction around the ExecutorProcess
  • create the ExecutorPool, an async producer/consumer queue which maintains a pool of active wasmedge processes, initialized on startup and replenished whenever an executor finished execution

Completion checklist

Event Timeline

Change #1064031 had a related patch set uploaded (by Jforrester; author: Jforrester):

[operations/deployment-charts@master] wikifunctions: Upgrade orchestrator from 2024-07-19-164024 to 2024-08-13-135124

https://gerrit.wikimedia.org/r/1064031

Change #1064032 had a related patch set uploaded (by Jforrester; author: Jforrester):

[operations/deployment-charts@master] wikifunctions: Upgrade evaluators from 2024-07-23-225548 to 2024-08-16-153209

https://gerrit.wikimedia.org/r/1064032

Change #1064031 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Upgrade orchestrator from 2024-07-19-164024 to 2024-08-13-135124

https://gerrit.wikimedia.org/r/1064031

Change #1064032 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Upgrade evaluators from 2024-07-23-225548 to 2024-08-16-153209

https://gerrit.wikimedia.org/r/1064032

Change #1064035 had a related patch set uploaded (by Jforrester; author: Jforrester):

[operations/deployment-charts@master] wikifunctions: Upgrade staging evaluators from 2024-08-16-153209 to 2024-08-16-153209 with new WASM pool code

https://gerrit.wikimedia.org/r/1064035

Change #1064035 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Upgrade staging evaluators from 2024-08-16-153209 to 2024-08-16-153209 with new WASM pool code

https://gerrit.wikimedia.org/r/1064035

Change #1064085 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/WikiLambda@master] tests: Skip a number of FunctionCall and PerformTest tests that have broken in Beta Cluster

https://gerrit.wikimedia.org/r/1064085

Change #1064085 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] tests: Skip a number of FunctionCall and PerformTest tests that have broken in Beta Cluster

https://gerrit.wikimedia.org/r/1064085

Change #1064466 had a related patch set uploaded (by Jforrester; author: Jforrester):

[operations/deployment-charts@master] wikifunctions: Upgrade staging evaluators from 2024-08-16-153209 to 2024-08-20-132618 with new WASM pool code

https://gerrit.wikimedia.org/r/1064466

Change #1064467 had a related patch set uploaded (by Jforrester; author: Jforrester):

[operations/deployment-charts@master] wikifunctions: Set some better default memory/CPU levels for evaluators

https://gerrit.wikimedia.org/r/1064467

Change #1064468 had a related patch set uploaded (by Jforrester; author: Jforrester):

[operations/deployment-charts@master] wikifunctions: Upgrade prod evaluators from 2024-08-16-153209 to 2024-08-20-132618 with new WASM pool code

https://gerrit.wikimedia.org/r/1064468

Change #1064466 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Upgrade staging evaluators from 2024-08-16-153209 to 2024-08-20-132618 with new WASM pool code

https://gerrit.wikimedia.org/r/1064466

Change #1064467 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Set some better default memory/CPU levels for evaluators

https://gerrit.wikimedia.org/r/1064467

Change #1064468 merged by jenkins-bot:

[operations/deployment-charts@master] wikifunctions: Upgrade prod evaluators from 2024-08-16-153209 to 2024-08-20-132618 with new WASM pool code

https://gerrit.wikimedia.org/r/1064468

Change #1070964 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/WikiLambda@master] Update function-schemata sub-module to HEAD (5b29ba9)

https://gerrit.wikimedia.org/r/1070964

Change #1070964 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] Update function-schemata sub-module to HEAD (5b29ba9)

https://gerrit.wikimedia.org/r/1070964