Accounting Report Tool

Description

The PRACE infrastructure enables access to the PRACE CPU hour usage using DART, the Distributed Accounting Report Tool, which is a client application which gathers accounting information provided by several PRACE sites in a standardised manner.

Based on this information it generates reports of the usage of distributed computing resources within PRACE. These reports can be specific for project supervisors, site administrators and users. To access accounting data with DART you must have a valid PRACE account.

Installation

DART is using the Java Webstart technology. That means that you can start the application by clicking Java webstart app launch.

All you need is an actual browser and a Java Runtime Environment 1.6 (also known as 6.0) or higher. You can obtain Java from the Oracle Website (http://www.oracle.com/technetwork/java/). Java Webstart guarantees that you keep DART up-to-date. Using the most recent DART is mandatory because this tool also contains information about all the distributed PRACE accounting servers and the CPU normalisation factors.

After you have clicked the launch link the application will be downloaded to your computer. If the download has finished Java will do a security check (see Figure 1). The application is signed by a certificate to verify the application’s distributor. By doing this it becomes more difficult for a third party to import a trojan or any other kind of virus software on your computer. The Publisher is "SURFsara B.V." and the certificate must be signed by DigiCert. You can get information about the used certificate by clicking More Information (see Figure 1).

NOTE: The certificate subject should be

CN=SURFsara B.V.,
OU=Compute,
O=SURFsara B.V.,
L=Amsterdam,
ST=Noord-Holland,
C=NL,
OID.2.5.4.17=1098 XG,
STREET=Science Park 140,
SERIALNUMBER=50277375,
OID.1.3.6.1.4.1.311.60.2.1.3=NL,
OID.2.5.4.15=Private Organization

and must be issued by

CN=DigiCert EV Code Signing CA (SHA2),
OU=www.digicert.com,
O=DigiCert Inc,
C=US

Figure 1: DART Security Warning

Figure 1: DART Security Warning

If you trust the application you can select the run button after which the apllication will start. Starting a browser and then going to the DART website can become tedious in the long run. However, there is the option for starting DART directly from the desktop. Depending on your Java and OS version the DART application will be cached on your hard disk and a shortcut will available on your desktop or start menu. Otherwise Java Webstart gives you the possibility to start the DART application from a Java Webstart Ap.

Figure 2: DART webstart

Figure 2: DART webstart

If you can’t find the Shortcut for the Java Webstart Application Manager on your desktop or in the start menu, locate javaws on UNIX (e.g. in $JAVA_HOME/bin/) or %JAVA_HOME%\bin\javaws.exe on Windows. JAVA_HOME represents your JRE installation directory. Java 1.6 requires to start the program with the -viewer option.

Using DART

The first screen that you get after starting DART lets you select a keystore to use for authentication, see Figure 3.

This keystore file must contain your private key associated with your X.509 certificate (signed by a trusted certificate authority). The keystore file must be a valid Java Keystore (JKS) or in the pkcs12 format (extension p12). The file is used for authentication during the retrieval of data from a PRACE accounting server. You have to enter your password for the keystore in the configuration dialog (see Figure 3) before you can click NEXT to go on. If you have installed UNICORE for job submission you can use the same keystore file that you are using for UNICORE without any changes. Normally the UNICORE keystore can be found under $USER_HOME/.unicore/keystore. If you don’t have your own certificate and private key or don’t have it in the p12 or jks format read the Certificate Guide first in the Appendix below. With the File button in the first screen you can select the location of the keystore file to use, by default DART tries to locate the keystore used by UNICORE.

Figure 3: Configuration of the authentication

Figure 3: Configuration of the authentication

The next step is to set the generic settings. You will see a screen like in Figure 4. In main there are three areas: the role selection, the date period selection and the site selection.

Figure 4: Generic configuration screen

Figure 4: Generic configuration screen

Role selection: The PRACE accounting service specifies the access roles PRACE user, PRACE project, PRACE site and PRACE supervisor. A PRACE user is every person who is allowed to submit jobs in the PRACE network. The PRACE user is permitted to see only the records of his own jobs. The PRACE project role is for the Principal Investigator (PI), co-PIs, project leaders and project controllers. These persons are permitted to see all records related to their project(s). The PRACE site role is for PRACE staff only. These persons are allowed to see all jobs that ran on their own site and all jobs that ran on other sites by users which are registered at their site. The PRACE supervisor role is for PRACE management.

If you are a PRACE user: choose the ‘PRACE user’ role and enter your PRACE username.

If you are a PRACE PI or co-PI: choose the ‘PRACE project’ role and enter the name of your project or use the wild card option ‘*’ or the single word ‘all’ to display the usage for all projects for which you are authorised.

If you are a PRACE Site Administrator: choose the ‘PRACE site’ role and enter the short PRACE site name (the same names as used to indicate the sites that can be selected).

Date selection: Select a start date and a end date for a period of your choice. Each Date must be in the YYYY-MM-DD format. Be warned that long periods may cause long retrieval times.

Site selection: Here you can select the sites from which data should be retrieved. Selecting only the sites where your jobs may have run will improve performance of data retrieval because only the necessary accounting services will be queried.

By clicking on the NEXT button the retrieval will start. This step can take a little time.

After the retrieval has finished you will see the report screen (see Figure 5). In the tabs you will find a total report for the whole selected period, and a tab for each month in this period. Be warned if you specified only a few days of a month, the month screen will contain only the data for this part of the month.

Sample: Startdate = 2006-05-15, Enddate = 2006-07-21

The view for May will contain all records from May 15 to May 31.

The view for June will contain all records from June 1 to June 30.

The view for July will contain all records from July 1 to July 21.

The Total view will contain all records from May 15 to July 21.

Records from May 5 or July 25 are NOT included in any of the report screens!

Usage is displayed as ‘job time’ (the wall clock time of the job multiplied with the number of reserved cores) and ‘CPU time’ (the total CPU time used on all cores).
For ‘job time’, two values are displayed: a normalised value in standardised PRACE core-hours and the non-normalised core-h(ours) (the latter are the actual core hours on the specific system). The normalised value is obtained by employing a conversion factor, which relates the execution system time to a reference system time (currently a Power4 CPU running at 1.7GHz). The normalised value is in the same units as used for the allocation of project budgets.
For ‘CPU time’, only one value is displayed: the CPU time in standardised PRACE core-hours. The Job time will, in principle, always be larger than the CPU time.

Figure 5

Figure 5

Export: It may be useful to export the report data. Maybe you will use them in a report or a presentation. There are two easy ways to export the data. The first way is to mark the interesting part in a table. By pressing Ctrl-C you can copy the data to the clipboard. Now you can paste the data in an OpenOffice Calc or an Excel Chart by pressing Ctrl-V. Or right click at the table to open a popup menu for this task.

The other way is the use of the Export button in the top of the window. By pressing this button the total report will be exported into a semicolon separated text file (see Figure 6).

Figure 6

Figure 6

The meaning of the values in this files are (from left to right): project name, user name, site name, machine name, count of jobs, walltime, job time std core-h, job time, cpu time std core-h.

You can create a new report using the New Report button. Or you can store the settings you made and leave DART. Saving the settings decreases the work of typing in most of the settings again at the next program start.

Appendix

This appendix contains some frequently asked questions about the DART, and a brief certificate guide.

FAQ

  • What is DART licensed under?
    DART is licensed under the Apache License, Version 2.0
  • What does the ‘CN=’ in the name field mean?
    The usage records do not contain the real name of the account owner. The only information is the Common Name (CN) of the users certificate. In most cases the CN includes the users real name. But there may be cases where the CN does not match the real name of the certificate owner.
  • What does the "Jobs" value mean?
    The "Jobs" value indicates how much jobs are aggregated. The summary values are for all jobs of a project
  • What does the wall clock value mean?
    The wall clock time is the time that your job has reserved resources and will be running.
  • What does the Cpu time value mean?
    That is the real time used for computing on the cores. Idle times are not included.
  • What does the Job Time value mean?
    This value is the wall clock time multiplied with the count of cores used or reserved. This is the value used for charging jobs in the PRACE network.
  • What’s the difference between Cpu time and Job time?
    The Job time includes the time that cores are not busy, for instance if waiting for I/O. The Cpu time excludes this time.
  • What does (std core-h) mean?
    The supercomputers used in the PRACE network are different. That means that the same job on different machines may need a different time because of the difference in performance. So PRACE introduced normalization values to make the cpu time and Job Time comparable between different platforms. The fields marked with (std core-h) include this normalization factor. The fields without the (std core-h) are the real times on a specific platform.
  • I often get an Request timed out error message
    The retrieval of data requires too much time. That may be caused by a big amount of usage records. Try to select a shorter period of time and inform the PRACE helpdesk.
  • Is there a GUI tool to handle this certificate stuff?
    You can find a third party tool to handle Java Keystores here. If you are using Unicore, use the Unicore keystore manager!

Certificate Guide

How to get a certificate

In several European countries you can get a personal eScience certificate using the GEANT Trusted Certificate Service (TCS). You can find information at TCS escience portal. You can also find information on a TCS wiki page and the link to the portal for requesting certificates is here.

The procedures to request a personal certificate in other countries will be different for each country. Find your local Certificate Authority by following the link to the EUGridPMA Clickable Map of Authorities. There you can find specific information about requesting a certificate. Or if you are outside the EUGridPMA area you can find your CA through the IGTF website and to follow the link for the APGridPMA or the TAGPMA

If you have a running Unicore environment, you might already be an owner of a valid certificate. In this case there is no need for requesting a new certificate. You can simply use your Unicore certificate.

Creating a valid keystore

In most cases you will have a certificate-key-pair in PEM or DER file format now. For using the DART CGI source you require either a Java KeyStore (JKS) file or PKCS12 (p12) file.

If you intend to use Unicore or prefer to use a JKS keystore, we recommend using Unicore for creating a JKS keystore. A good "how to" about that can be found on the FZJ Homepage. If you do not intend to use Unicore use the command below to create a PKCS12 keystore file.

For DART the CA certificates are already included in the application. So only a PKCS12 keystore file with your personal keys needs to be created. A PKCS12 keystore can be created from your PEM or DER files with the command line tool OpenSSL. The program is installed on mostly all Unix systems. If not, the most distributions have openssl packages. It is also possible to install or compile OpenSSL on Microsoft Windows.

On the command line enter the following command to create a PKCS12 keystore:

openssl pkcs12 -export -in usercert.pem -inkey userkey.pem -name "<Your Alias>" -out keystore.p12

You will need to enter you pass phrase to unlock your certificate userkey, and give a new password to protect your new PKCS12 keystore file. Then, you will have a working PKCS12 keystore file keystore.p12 to connect to accounting sources using DART. When using DART, select this file and give the new password you specified here to open the file.

You also may have your keys already in your browser in p12 format, either by an import or because your CA provided it through your browser. In that case you can export the p12 file from your browser, the procedure will differ between different browsers. You can find more information in Certificates FAQ.