Skip to content
This repository was archived by the owner on Dec 2, 2024. It is now read-only.
This repository was archived by the owner on Dec 2, 2024. It is now read-only.

Improve walletState by improving comparison of wallets #811

@koslambrou

Description

@koslambrou

Description

As a plutus-apps emulator user

I want an efficient version of walletState

so that I waste as little time as possible when I run the emulator.

Technical details

After the first investigation of https://input-output.atlassian.net/browse/PLT-1026 (emulator performance regression following merge from next-node to main), walletState takes 2% of the time of a whole plutus-use-cases run.

Here is an excerpt of the prof file that illustrates the costs of the calls inside walletState:

walletState  Wallet.Emulator.MultiAgent  src/Wallet/Emulator/MultiAgent.hs:(246,1)-(247,120)  52551           0    0.1    0.1     1.0    1.6
 compare     Wallet.Emulator.Wallet      src/Wallet/Emulator/Wallet.hs:108:3-57               52584     3704890    0.0    0.1     0.9    1.5
  compare    Wallet.Emulator.Wallet      src/Wallet/Emulator/Wallet.hs:145:19-21              52585           0    0.8    1.4     0.8    1.4

Metadata

Metadata

Assignees

No one assigned

    Labels

    TrackedIssue is tracked in our internal backlogperformanceIssues related to performance improvements

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions