2 void runAAFglob(TString dataset="/alice/data/LHC10h_000137161_p1_plusplusplus",
3 TString outFName = "globs.root",
4 Int_t nEvents = 50000000,
6 TString alirootVer = "VO_ALICE@AliRoot::v4-21-04-AN",
7 TString rootVer = "VO_ALICE@ROOT::v5-27-06b",
8 TString proofCluster="shahoian@alice-caf.cern.ch"
9 //TString proofCluster="shahoian@skaf.saske.sk"
13 Bool_t runLocal = kFALSE; // true only for local test mode
15 dataset = "/default/shahoian/test_pp";
16 //dataset = "/default/shahoian/test";
18 alirootVer = "AliRootProofLite";
22 printf("Requested: %s %s\n",alirootVer.Data(), rootVer.Data());
23 printf("Output expected in %s\n",outFName.Data());
25 gEnv->SetValue("XSec.GSI.DelegProxy","2");
27 TString alirootMode="REC";
29 extraLibs+= "ANALYSIS:ANALYSISalice";
30 TList *list = new TList();
31 // sets $ALIROOT_MODE on each worker to let proof to know to run in special mode
32 list->Add(new TNamed("ALIROOT_MODE" , alirootMode.Data()));
33 list->Add(new TNamed("ALIROOT_EXTRA_LIBS", extraLibs.Data()));
34 // list->Add(new TNamed("ALIROOT_ENABLE_ALIEN","1"));
36 //REM: same version of AliRoot on client!!!!! Otherwise error!!
37 TProof::Mgr(proofCluster.Data())->SetROOTVersion(rootVer.Data());
38 TProof::Open(proofCluster.Data());//,"workers=10x");
39 // TProof::Open(proofCluster.Data(),"workers=1x");
41 Error("runAAFglob.C","Connection to AF failed.");
44 gProof->Exec("TObject *o = gEnv->GetTable()->FindObject(\"Proof.UseMergers\");"
45 "gEnv->GetTable()->Remove(o);", kTRUE);
46 // gProof->SetParameter("PROOF_UseMergers", 0);
47 // Lets enable aliroot + extra libs on proof cluster
48 if (runLocal) gProof->UploadPackage(alirootVer.Data());
49 gProof->EnablePackage(alirootVer.Data(), list);
51 gROOT->LoadMacro("AnalysisMacroGlob.C");
54 Int_t numWorkers = gProof->GetParallel();
55 if (numWorkers<1) {printf("No workers\n"); return;}
56 gProof->SetParameter("PROOF_PacketizerStrategy", (Int_t)0);
57 int frac = (Int_t) 5 / numWorkers;
59 gProof->SetParameter("PROOF_PacketAsAFraction", frac);
61 AnalysisMacroGlob(dataset,outFName,nEvents,nEventsSkip);