Creating custom optimization packs

To create a custom optimization pack, the following fixed directory structure and several YAML manifests need to be created.

Optimization pack directory structure

my_dir|_ optimizationPack.yaml|_ component-types| |_ componentType1.yaml||_ metrics| |_ metricsGroup1.yaml||_ parameters| |_ parametersGroup1.yaml||_ telemetry-providers|_ provider1.yaml

Optimization pack manifest

The optimizationPack.yaml file is the manifest of the optimization pack to be created, which should always be named optimizationPack and have the following structure:1name: Java_8_Optimization_Pack2description: An optimization pack for the Java Hotspot JVM version 83weight: 14version: 1.0.05tags:6- java7- jvmwhere:

Field

Type

Value restrictions

Is required

Default value

Description

name

string

It should not contain spaces.

TRUE

The name of the optimization pack.

description

string

TRUE

A description to characterize the optimization pack.

weight

integer

weight > 0

TRUE

A weight to be associated to the optimization pack. This field is used for licensing purposes.

version

string

It should match the regexp: \d.\d.\d

TRUE

The version of the optimization pack.

tags

array of string

FALSE

An empty array

A set of tags to make the optimization pack more easily searchable and discoverable.

Component types

The component-types directory should contain the manifests of the component types to be included in the optimization pack. No particular naming constraint is enforced on those manifests. See Component Types template for details on the structure of those manifests.

Metrics

The metrics directory should contain the manifests of the groups of metrics to be included in the optimization pack. No particular naming constraint is enforced on those manifests. See Metric template for details on the structure of those manifests.

Parameters

The parameters directory should contain the manifests of the groups of parameters to be included in the optimization pack. No particular naming constraint is enforced on those manifests. See Parameter template for details on the structure of those manifests.

Building optimization pack descriptor

The following command needs to be executed in order to produce the final JSON descriptor:

akamas build optimization-pack PATH_TO_THE_DIRECTORY

After this, the optimization pack can be installed and used.

Last updated