io.sarl.api.experienceindex
Class SarlExperienceIndex
final class SarlExperienceIndex
extends java.lang.Object
This class computes the SARL Experience Index (SEI) of your machine.

The SEI is inspirated by the Windows Experience Index. The SEI measures the capability of your computer's hardware and software configuration and expresses this measurement as a number called a base score. A higher base score generally means that your computer will perform better and faster than a computer with a lower base score.

Global Base Score

The base score is a value between 1.0 and 5.9. The base score is based on the sub scores of sub components.

The model logic is tolerant of one subscore being below the threshold for a particular level by 0.1. For example, assume that in the above example, the memory score was 4.0 and the processor score 3.9. This would mean that the processor score would marginally be the only item keeping the base score below level 4. The model addresses this issue by rounding up a single value that is below the next round level by 0.1.

After the sub scores are normalized, the global base score is the average score of the sub components.

CPU Score

The CPU score was created to measure the processor performance when tasked with common Janus usage activities. The processor is assessed on the following items:
  1. Compression and decompression using the Zip compression algorithm
  2. Encryption and decryption assessment
  3. Arithmetic Operations
The results are normalized and weight averaged in order to arrive at the final CPU sub score.

Memory Score

The memory score measures the bandwidth of moving data into and out of memory in Mega Bytes per Second. The higher the bandwidth, the better the memory. Not having enough memory is a limiting factor on performance. As a result, the amount of memory in the system constrains the score value. The amount of memory limits are:
Memory Scores
Amount of memory Highest possible score
64 MB or less 1.0
Less than 128 MB 2.0
Less than 256 MB 3.0
Less than 512 MB 4.0
Less than 1 GB 5.0

Disk Score

The disk score measures disk bandwidth (in Mega Bytes per Second). The conversion to an index number is set up in a way that all modern disks will score at least 2.0.
Maven Group Identifier:
io.sarl.sdk
Maven Artifact Identifier:
api.experienceindex
Since:
0.6
Nested Type Summary
Modifier and type Type and description
class SarlExperienceIndex.SEI
This class contains the different SEI of your machine.
Field Summary
Modifier and type Field and description
public static val java.lang.String VERSION
Version of the SEI.
Action Summary
Modifier and type Action and description
static float baseScore([SeiCanceler])
Compute the global SEI.
static float cpuScore([SeiCanceler])
Compute the CPU score.
static float diskScore([SeiCanceler])
Compute the disk score.
static SEI getJanusExperienceIndex([SeiCanceler])
Replies the current SEI.
static void main(String*)
Run the SEI from the command-line.
static float memoryScore([SeiCanceler])
Compute the Memory score.
Field Details
VERSION
public static val VERSION : java.lang.String = "1.0"
Version of the SEI.
Action Details
baseScore([SeiCanceler])
def baseScore([SeiCanceler]) : float
Compute the global SEI.
Parameters:
canceller - the object that permits to stop the computation before its end.
Returns:
the global SEI.
cpuScore([SeiCanceler])
def cpuScore([SeiCanceler]) : float
Compute the CPU score.
Parameters:
canceller - the object that permits to stop the computation before its end.
Returns:
the CPU score.
diskScore([SeiCanceler])
def diskScore([SeiCanceler]) : float
Compute the disk score.
Parameters:
canceller - the object that permits to stop the computation before its end.
Returns:
the disk score.
getJanusExperienceIndex([SeiCanceler])
def getJanusExperienceIndex([SeiCanceler]) : SEI
Replies the current SEI.
Parameters:
canceller - the object that permits to stop the computation before its end.
Returns:
the current SEI.
main(String*)
def main(String*)
Run the SEI from the command-line.
Parameters:
args - no used.
memoryScore([SeiCanceler])
def memoryScore([SeiCanceler]) : float
Compute the Memory score.
Parameters:
canceller - the object that permits to stop the computation before its end.
Returns:
the Memory score.