Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

...

  • Components marked with orange colour are new components. Blue component are existing components.

  • Tag [FutureDev] is used for requirements, use cases or user stories that will be implemented in the future but may already have impact on the design. So they should be taken under consideration when designing planned features.

  • Tag [Nice-to-have]is used for requirements, use cases and user stories that would ideally be included. But may be moved for later stages without big impact on the outcome.

...

  • GUI must work in native ARM64 environment and in x64 environment.

  • GUI must work on native WOA OS browser Microsoft Edge.

    • If GUI is implemented as Web Script.

  • [FutureDev] GUI must work in environment without access to the Internet.

    • GUI users may be working inside private, closed test / lab networks and may not have access to the Internet.

    • This implied no external import / loads of external source scripts or libraries.

  • [FutureDev] GUI must be able to connect and interact with multiple wperf-relay instances to query, fetch, group and present counting and sampling data.

  • [FutureDev] GUI users may want to write “plugins” to add e.g. new graphs or other visualisations.

  • [FutureDev] GUI displays Flame Chart for profiled code.

  • [FutureDev] GUI displays Timeline for counting model.

...

Multi-host architecture proposal

[FutureDev] One wperf-gui instance should be able to connect to multiple wperf-relay instances. This architectural extension may be required in “clusters” of ARM64 systems, WOA testbeds / test labs. Users may want to gather “simultaneously” timeline, counding, sampling, metrics, analysis data from many (>1) WOA hosts. There’s a benefit to performance analysis on multiple systems at once. And we recognise this requirements.

...

User story name

Description

Phase

CLI-01

Anchor
CLI-01
CLI-01

As a user I want wperf to return JSON when error occurs and -json command line option flag is specified.

1

CLI-02

Anchor
CLI-02
CLI-02

As a user I want wperf to return MAX_MANAGED_CORE_EVENTS, MAX_MANAGED_DSU_EVENTS, MAX_MANAGED_DMC_CLK_EVENTS, MAX_MANAGED_DMC_CLKDIV2_EVENTS in wperf test output (Test Name and Result).

1

CLI-03

Anchor
CLI-03
CLI-03

Add new entries to wperf stat output:

  • multiplexing: yes/no

  • kernel mode excluded/included

  • time elapsed: [in seconds]

1

wperf-gui

User story name

Description

Phase

GUI-01

Anchor
GUI-01
GUI-01

As a GUI user I want to be able to authenticate with wperf-relay with <token>.

GUI-02

Anchor
GUI-02
GUI-02

As a GUI user I want to select host (and port) to connect to wperf-relay.

1

GUI-03

Anchor
GUI-03
GUI-03

As a GUI user I want to see list of all available events and metrics for counting.

1

GUI-04

Anchor
GUI-04
GUI-04

As a GUI user I want to check wperf and wperf-driver version on host I’m connected to.

1

GUI-05

Anchor
GUI-05
GUI-05

As a GUI user I want to check wperf test output on host I'm connected to.

1

GUI-06

Anchor
GUI-06
GUI-06

As a GUI user I want to store locally list of hosts I’ve predefined.

1

GUI-07

Anchor
GUI-07
GUI-07

As a GUI user I want to connect to host(s) stored locally with GUI-06.

1

GUI-08

Anchor
GUI-08
GUI-08

As a GUI user I want to log to file communication between GUI and all hosts.

GUI-09

Anchor
GUI-09
GUI-09

As a GUI user I want to see in real time wperf console output.

1

GUI-10

Anchor
GUI-10
GUI-10

As a GUI user I want to use widget to prepare list of events and event groups. Events should be available as a list fetched with GUI-03.

1

GUI-11

Anchor
GUI-11
GUI-11

As a GUI user I want to use widget to prepare list of metrics. Metrics should be available as a list fetched with GUI-03.

1

GUI-12

Anchor
GUI-12
GUI-12

As a GUI user I want to use widget to create list of cores for counting.

1

GUI-13

Anchor
GUI-13
GUI-13

As a GUI user I want to see counting results after submitting counting query.

1

GUI-14

Anchor
GUI-14
GUI-14

As a GUI user I want to see error messages from relay and wperf.

1

...

User story name

Description

Phase

RELAY-01

Anchor
RELAY-01
RELAY-01

As a relay user I want to only authenticate user with valid <token>.

RELAY-02

Anchor
RELAY-02
RELAY-02

As a relay user I want to log all events between relay and Relay API clients in local console.

1

RELAY-03

Anchor
RELAY-03
RELAY-03

As a relay user I want to log all events between relay and Relay API clients to a file.

RELAY-04

Anchor
RELAY-04
RELAY-04

As a relay user I want to enable mock mode which will simulate existence of WindowsPerf on the host system.

1

RELAY-05

Anchor
RELAY-05
RELAY-05

As a relay user I want relay to handle wperf errors and report errors to clients.

1

RELAY-06

Anchor
RELAY-06
RELAY-06

As a relay user I want relay to have only one (running) instance on host.