云计算代写 | SIT323 Programming Task 1 – Validation and Testing

这个作业是在云计算上完成应用的验证和测试

SIT323 Cloud Application Development
Programming Task 1 – Validation and Testing

Introduction
Programming Tasks 1 and 2 comprise parts of the one project. These require you to design,
develop and test software related to a task allocation problem in which a parallel program is
partitioned into a set of tasks and these tasks need to be allocated to a set of processors
such the amount of energy consumed is minimised (see class notes of week 1).

Task Allocations file format (.taff)
Your software solution for Programming Task 1 must use data from a text file that contains
zero or more task allocations (see “PT1 – Test1.taff” as an example).
1. Lines containing zero or more white spaces only are allowed.
2. Lines containing a comment or data are permitted to commence with 0 or more white
spaces.
3. A line containing a comment is allowed. The symbol // will indicate the start of a
comment, the end of line will represent the end of a comment. Some valid comment
lines are as follows.
// This is valid.
// Creation date: 28/2/2021
// Leading white spaces are valid too.
Mixing data and a comment on one line is not allowed. For example, the following line is
invalid:
FILENAME=”PT1 – Test1.cff” // Configuration filename.
4. There will be a section that references a configuration file. This section starts with the
keyword CONFIGURATION-DATA on a line by itself, and ends with the keyword ENDCONFIGURATION-DATA on a line by itself.
Between these two keywords will be a line containing the name of a configuration file. It
commences with the keyword FILENAME, followed by an equals symbol, and ends with
the filename that is delimited by double quotes. For example.
CONFIGURATION-DATA
FILENAME=”config.cff”
END-CONFIGURATION-DATA
5. There will be a section that contains data about allocations. This section starts with the
keyword ALLOCATIONS on a line by itself, and ends with the keyword ENDALLOCATIONS on a line by itself.
There will be a line indicating the number of allocations. It commences with the keyword
COUNT, followed by an equals symbol, and the number of allocation in this section.
There will be a line indicating the number of tasks in each allocation. It commences with
the keyword TASKS, followed by an equals symbol, and the number of tasks.
There will be a line indicating the number of processors in each allocation. It
commences with the keyword PROCESSORS, followed by an equals symbol, and the
number of processors.
There will be 0 or more sub-sections of allocation data. One sub-section for each
allocation. Each sub-section starts with the keyword ALLOCATION on a line by itself,
and ends with the keyword END-ALLOCATION on a line by itself. Details of an
ALLOCATION sub-section is below.
6. There will be a sub-section of data for each allocation. In general, each allocation has
an ID and a MAP that represents the allocation of 0 or more tasks to each processor.
For each ALLOCATION sub-section, there will be two lines of data. The first line
commences with the keyword ID, followed by an equals symbol, and ends with an ID
number. The second line commences with the keyword MAP, followed by an equals
symbol, and ends with data to specify an allocation.