mirror of
				https://github.com/ARM-software/workload-automation.git
				synced 2025-10-30 22:54:18 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			55 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| from wa import Parameter, ApkWorkload
 | |
| 
 | |
| 
 | |
| class ${class_name}(ApkWorkload):
 | |
| 
 | |
|     name = '${name}'
 | |
|     description = "This is an placeholder description"
 | |
|     # Replace with a list of supported package name(s) in the APK file(s).
 | |
|     package_names = ['package_name']
 | |
| 
 | |
|     parameters = [
 | |
|         # Workload parameters go here e.g.
 | |
|         Parameter('example_parameter', kind=int, allowed_values=[1,2,3],
 | |
|                   default=1, override=True, mandatory=False,
 | |
|                   description='This is an example parameter')
 | |
|     ]
 | |
| 
 | |
|     def __init__(self, target, **kwargs):
 | |
|         super(${class_name}, self).__init__(target, **kwargs)
 | |
|         # Define any additional attributes required for the workload
 | |
| 
 | |
|     def init_resources(self, resolver):
 | |
|         super(${class_name}, self).init_resources(resolver)
 | |
|         # This method may be used to perform early resource discovery and
 | |
|         # initialization. This is invoked during the initial loading stage and
 | |
|         # before the device is ready, so cannot be used for any device-dependent
 | |
|         # initialization. This method is invoked before the workload instance is
 | |
|         # validated.
 | |
| 
 | |
|     def initialize(self, context):
 | |
|         super(${class_name}, self).initialize(context)
 | |
|         # This method should be used to perform once-per-run initialization of a
 | |
|         # workload instance.
 | |
| 
 | |
|     def validate(self):
 | |
|         super(${class_name}, self).validate()
 | |
|         # Validate inter-parameter assumptions etc
 | |
| 
 | |
|     def setup(self, context):
 | |
|         super(${class_name}, self).setup(context)
 | |
|         # Perform any necessary setup before starting the application
 | |
| 
 | |
|     def extract_results(self, context):
 | |
|         super(${class_name}, self).extract_results(context)
 | |
|         # Extract results on the target
 | |
| 
 | |
|     def update_output(self, context):
 | |
|         super(${class_name}, self).update_output(context)
 | |
|         # Update the output within the specified execution context with the
 | |
|         # metrics and artifacts form this workload iteration.
 | |
| 
 | |
|     def teardown(self, context):
 | |
|         super(${class_name}, self).teardown(context)
 | |
|         # Perform any final clean up for the Workload.
 |