Category: software

Tag Extraction on Athenaeum

Athenaeum Web Service now contains a simple (testing) frontend to Tag Extraction XML-RPC Server. Just choose your Server (lxvm0341:1001 or voatlas18:10001), fill in the passord, click on “Extract Tag file” and you can play.
Tag Extract test

CHEP Rapport

CHEP logoLes conférences Computing in High Energy and Nuclear Physics (CHEP) sont organisées tous les 18 mois. La 17ème à eu lieu cette année à Prague, du 21 au 27 mars, dans le Centre des Congrès de Prague. Ce dernier a été construit par l’ancien régime communiste pour accueillir les congrès du Parti communiste, il se dresse sur la colline de Vysehrad et offre une belle vue sur Prague.
La conférence a réuni 615 participants de 41 pays. Il y a eu 30 discours en plénière, près de 300 posters et plus de 200 présentations orales dans 7 sessions parallèles:

  • Collaborative Tools
  • Distributed Processing and Analysis
  • Event Processing
  • Grid Middleware and Networking Technologies
  • Hardware and Computing Fabrics
  • Online Computing
  • Software Components, Tools and Databases

La conférence a été précédée par la réunion WLCG avec 240 participants.

Sans surprise, le thème principal de cette conférence a été la préparation pour les expériences LHC. Une plus petite partie a concerné les expériences qui ont déjà recueilli des données. La plupart des présentations peuvent être caractérisées par plusieurs mots-clés: Distribution, Web Service, Des Données et Performance.

  • Distribution: Tout semble être maintenant à certains points liés à la Grille. Toutefois, le nouveau paradigme de l’informatique distribuée est arrivé – le Cloud. Il n’est pas encore clair, si le Cloud sera utile dans environnement HEP, mais l’intérêt est certainement présent.
  • Web Service: Presque tous les services sont aujourd’hui présentés à un utilisateur sous la forme de Web Service. Les développeurs ont choisi d’un large spectre de technologies standard disponibles, le plus souvent avec l’aide de XML et Python. Certains projets inventent leur propre technologie pour mettre en œuvre des fonctionnalités spécifiques.
  • Des Données: Toutes les données sont distribuées. Alors que l’idée originale de la base de données fédéré orienté objet, est abandonnée, une architecture générale consiste en un réseau faiblement couplé de bases de données relationnelles et des réseaux de serveurs de fichiers. Les données sont répliquées. L’accès se fait par les proxies et les caches afin d’accélérer l’accès et de distribuer la charge. De nombreuses expériences parlent de données de Conditions (données décrivant l’expérience) et de Métadonnées (données qui décrivent d’autres données). L’idée de l’indépendance sur la technologie de la base de données relationnelle semble être abandonnée. Tout le monde converge vers une base de données Oracle au centre et SQLite pour la distribution des données. XRootd est généralement utilisé pour fournir un accès aux fichiers.
  • Performance: En plus de l’optimisation classique du code et des algorithmes, de nouvelles méthodes sont évaluées afin d’augmenter la performance disponible. Il existe de nombreux projets sur la parallélisation et l’utilisation des architectures multicœurs. Un autre sujet chaud est la virtualisation, qui permet de lancer une expérienceframework dans une machine virtuelle hébergée dans n’importe quel système d’exploitation.

La plupart des projets sont fondés sur Root, LCG ou le framework Gaudi, le plus souvent sur l’ensemble d’entre eux. Le choix du language semble être C++ avec un intérêt croissant pour Python et une utilisation constante de XML. Les lacunes du C++ ont toutefois étés mises en avant dans plusieures présentations, où les auteurs tentent en effet de créer une variante utilisable de C++.

Une évolution positive est le fait qu’il y ait moins de Status Reports. Plus de temps a été consacré à des problèmes réels et de vraies solutions.

Il n’y avait pas de programme scientifique le mercredi après-midi et les participants ont pu s’occocier à l’un des voyages thématiques proposé. Le banquet de cloture a eu lieu dans le très beau palais Zofin.

Tous les présentations sont disponibles à l’adresse http://www.particle.cz/conferences/chep2009, les présentations des séances plénières sont également disponibles avec l’enregistrement vidéo. Les proceedings seront publiés en libre accès dans le Journal of Physics: Conference Series (JPCS), publié par l’IOP Publishing. Les proceedings vont probablement contenir plus de 4000 pages (ils n’existent que sous forme numérique).

EveryTrail

I have included some of my recorded GPS Tracks in EveryTrail service. They will become available in GoogleEarth. Every Trail

CHEP’09 Summary

CHEP’09 has ended. I think, it was a success.

I had a summary talk about my track Software Components, Tools and Databases.

The conference dinner took place in Zofin palace with very nice music from Havelka’ Sisters.

CHEP Sestry Havelkovi

Tag Extraction via Athenaeum

Athenaeum now contains tag extraction command. It is available in all interfaces, especially via command line and Web Service:


athenaeum http://lxvm0341.cern.ch:10001 *** Extract params.py
Extract via Athenaeum

other posts about Athenaeum

Cool Athenaeum browsing

Cool browsing now works with Athenaeum 2.0. The general entry point is at Athenaeum Web Service page. Direct access is also possible using special style URL.
Simple example shows payloads from /Indet/TrkErrorScaling folder (which is highlighted in the list of folders). By clicking on various elements, you will get more details. In some cases, additional details will be requested from the server (i.e. new interaction will be launched). This example doesn’t need full Athena server, simple PyCool server is enough because payloads are fully available from the SQL database.

Cool Athenaeum

More complex example shows a typical Cool database content with (partial) LAr payload for /LAR/ElecCalib/Ramps/Ramp folder. Note, that the server should run full Athena (not only PyCool) to get detailed payloads. The response may be slow depending on access delay to the PoolRoot file. Other delay may be caused by the fact, that while Athenaeum server is fully multithreading, Athena can only serve one client. Also, Athena may crash.

The Athenaeum Web Service panel corresponding to this task is shown on the righ.

selection
The URL looks like this:


http://cern.ch/Athenaeum/Cool.jsp?
url=http://voatlas16.cern.ch:54321&
key=atlas_standard_password&
server=oracle://ATLAS_COOLPROD&
dbname=COMP200&
schema=ATLAS_COOLONL_LAR&
user=&
password=&
lod=everything&
showPoolRef=false&
folders=/LAR/ElecCalib/Ramps/Ramp&
tags=LARElecCalibRampsRamp-comm-01&
channels=&
startTime=&
stopTime=&
startRun=0&
startLumi=0&
stopRun=2147483647&
stopLumi=4294967295&
payloadLimit=2&
format=HTML
Direct access from a command line is also available, as described in previous posts: New Athenaeum command available and Athenaeum with Cool Payloads.

other posts about Athenaeum

Athenaeum 2.0.0 released

Athenaeum Smile
New version of Athenaeum has been released. Major changes are:

  • Support for JAS has been stopped due to very little demand from users and even smaller support from JAS authors. The most recent version of Athenaeum JAS plugin is still available (full Athenaeum 1.5.2.3, as JAS plugin) and can be re-animated, if requested. The Athenaeum interfaces are API (Java, C++, PHP), Command Line and Web Services as described in another post.
  • The Server for Atlas tag database have been largely improved and deployed, as documented in another post.
  • The code has been largely cleaned up.

other posts about Athenaeum

How to add Athenaeum functionality to ordinary Web page

Athenaeum functions are available via several interfaces:

A user can include any Athenaeum functionality in her ordinary Web page using following code:


<table>
<tr><td>
<iframe frameborder='0'
        scrolling='yes'
        marginheight='0'
        marginwidth='0'
        src='http://cern.ch/Athenaeum/Log.jsp?url=http://lxvm0341.cern.ch:10001&key=***'
        height='600'
        width='800'></iframe>
</td></tr>
</table>

Log.jsp service can be replaced with other services, like Help.jsp or Info.jsp.

other posts about Athenaeum

The Agenda for CHEP’09 in Prague is ready

You can start from the Conference Web Page or go directly to the agenda.

The Weather will be unusually cold.

See you in Prague.

CHEP'09

How to call legacy C++ from Java

JavaFirst of all, verify if you realy need the C++ code. There are excellent Java equivalents for many legacy C++ packages. For HEP specific code, you may look at FreeHEP or jHepWork. Other usefull Java packages are noted in the Java In Atlas Wiki page, some are even already installed in the CERN Java Infrastructure.

If you are definitely sure that you do have to call your legacy C++ code, you have several alternatives to implement your bridge:

  1. JACE works ok for calling Java from C++, here everything is automatic. Calling C++ from Java is more tricky, you have to write proxies. Your task can be a little simpler if you don’t use standard C++, but Cint dialect of C++. In that case you could use Cint (or Reflex) dictionary to build the proxies. JACE works fine and the JACE discussion forum is active.
  2. JavaRoot allows to call Root functions from Java. The package comes directly from HEP community. It has not been updated for some time, but it may be worth to reanimate. Maybe its author could help you.
  3. I have no experiance with JNIEasy, I just know it exists.
  4. NestedVM allows to compile any (really) code compilable by GCC into Java bytecode. It uses patched GCC. This way, you can compile your legace C++ code directly to Java and your problems are gonne.

By the way, calling Java from C++ is much easier, JACE does the excelent job.