Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • emsmith/athena
  • dzubov/athena
  • pscholer/athena
  • akvam/athena
  • flasagni/athena
  • hartman/athena
  • alux/athena
  • berenice/athena
  • mschott/athena
  • mgenest/athena
  • pbalek/athena
  • dsalvato/athena
  • korcyl/athena
  • tlyubush/athena
  • lyubushk/athena
  • gstark/athena
  • yharris/athena
  • lmonsoni/athena
  • nagano/athena
  • lcorpe/athena
  • lshi/athena
  • rrosten/athena
  • ytsujika/athena
  • tiledemo/athena
  • abagdato/athena
  • fparodi/athena
  • tmoxter/athena
  • lheinric/athena
  • milu/athena
  • pyin/athena
  • juesseiv/athena-celeritas
  • mmlynari/athena
  • matthier/athena
  • jsandesa/athena
  • borisov/athena
  • zchubini/athena
  • mpenzin/athena
  • mcorradi/athena
  • okovanda/athena
  • meevans/athena
  • isiral/athena
  • haa2mu2tau/athena
  • nkvu/athena
  • andre/athena
  • ebakos/athena
  • gwmyers/athena
  • lportale/athena
  • vasothil/athena
  • bwinter/athena
  • brle/athena
  • camacho/athena
  • icioara/athena
  • mcentonz/athena
  • quli/athena
  • mikhail/athena
  • begilber/athena
  • gartoni/athena
  • abkahn/athena
  • mbasso/athena
  • pagacova/athena
  • dgancarc/athena
  • stefania/athena
  • gmarchio/athena
  • jolsson/athena
  • atlasdqm/athena
  • chuanshu/athena
  • yygao/athena
  • shimoji/athena
  • zhenw/athena
  • jojamies/athena
  • keli/athena
  • cnass/athena
  • beckerov/athena
  • passaggi/athena
  • marvin/athena
  • hdf5-utils/athena
  • pberta/athena
  • aaboulho/athena
  • acrobert/athena
  • ranjitn/athena
  • cescobar/athena
  • ktodome/athena
  • kastanas/athena
  • huirun/athena
  • atrzupek/athena
  • tzorbas/athena
  • lfountas/athena
  • ccarrion/athena
  • aambler/athena
  • derendar/athena
  • britzger/athena
  • hanl/athena
  • epender/athena
  • gipezzul/athena
  • mmineev/athena
  • robertma/athena
  • gnn4itkteam/athena
  • phkoenig/athena
  • nguseyno/athena
  • avasyuko/athena
  • pleier/athena
  • gtateno/athena
  • pavel/athena
  • reznicek/athena
  • nekumari/athena
  • jcordeir/athena
  • herrmant/athena
  • aburke/athena
  • xuh/athena
  • jiling/athena
  • ewallin/athena
  • lmcelhin/athena
  • tvazquez/athena
  • tnommens/athena
  • averbyts/athena
  • yuhui/athena
  • lserkin/athena
  • shbansal/athena
  • corentin/athena
  • gascott/athena
  • berkeleylab/CharmPhysics/athena
  • ccaminch/athena
  • hfox/athena
  • miochoa/athena
  • madurano/athena_gittutorial
  • cdiez/athena
  • cpollard/athena
  • jakoubek/athena
  • ckirfel/athena
  • msykora/athena
  • atlas/athena
  • kjohns/athena
  • calfayan/athena
  • toshi/athena
  • aundrus/athena
  • fwinkl/athena
  • dguest/athena
  • akraszna/athena
  • wlampl/athena
  • gemmeren/athena
  • karolos/athena
  • ssnyder/athena
  • rhauser/athena
  • wwalko/athena
  • jmontejo/athena
  • emoyse/athena
  • phwindis/athena
  • pgadow/athena
  • damazio/athena
  • solodkov/athena
  • arnaez/athena
  • rbielski/athena
  • okuprash/athena
  • dcasper/athena
  • smh/athena
  • baines/athena
  • mrybar/athena
  • ychiu/athena
  • mmuskinj/athena
  • turra/athena
  • christos/athena
  • tdado/athena
  • psommer/athena
  • yoyamagu/athena
  • rbianchi/athena
  • bwynne/athena
  • tadej/athena
  • graemes/athena
  • abuckley/athena
  • sshaw/athena
  • jmasik/athena
  • tstreble/athena
  • shlomit/athena
  • ATLAS-EGamma/athena
  • pjacka/athena
  • hartj/athena
  • tamartin/athena
  • jcatmore/athena
  • ebuschma/athena
  • tbold/athena
  • yuxu/athena
  • gunal/athena
  • mhodgkin/athena
  • ewelina/athena
  • toyamaza/athena
  • nstyles/athena
  • ligang/athena
  • sroe/athena
  • mark/athena
  • nikiforo/athena
  • lfiorini/athena
  • fpastore/athena
  • longjon/athena
  • harkusha/athena
  • almaloiz/athena
  • jichen/athena
  • tlari/athena
  • mvozak/athena
  • leggett/athena
  • cchan/athena
  • martindl/athena
  • cshimmin/athena
  • susinha/athena
  • filthaut/athena
  • mihuebne/athena
  • jsallen/athena-high-pt-ms-jets
  • dkar/athena
  • chays/athena
  • peter/athena
  • cvarni/athena
  • alfroch/athena
  • wleight/athena
  • dtovey/athena
  • sgeorge/athena
  • nwarrack/athena
  • mstamenk/athena
  • okepka/athena
  • tkohno/athena
  • yafu/athena
  • mgignac/athena
  • tmkrtchy/athena
  • wiedenat/athena
  • janovak/athena
  • cohm/athena
  • khoo/athena
  • gingrich/athena
  • schaarsc/athena
  • maklein/athena
  • omajersk/athena
  • dbakshig/athena
  • ponyisi/athena
  • fernando/athena
  • scheiric/athena
  • ravinab/athena
  • pleskot/athena
  • xai/athena
  • jobalz/athena
  • ekuwertz/athena
  • achishol/athena
  • ebergeas/athena
  • alaurier/athena
  • ekasimi/athena
  • merrenst/athena
  • mtoscani/athena
  • afaulkne/athena
  • goetz/athena
  • krumnack/athena
  • mdanning/athena
  • dpopov/athena
  • astruebi/athena
  • egramsta/athena
  • clseitz/athena
  • hye/athena
  • efilmer/athena
  • ppostola/athena
  • bmindur/athena
  • ncalace/athena
  • shanisch/athena
  • jpanduro/athena
  • ssarikay/athena
  • rcoelhol/athena
  • tupham/athena
  • hyamauch/athena
  • aad/athena
  • nkrengel/athena
  • gpanizzo/athena
  • cmcginn/athena
  • rkopelia/athena
  • stelzer/athena
  • tsulaia/athena
  • ssottoco/athena
  • bernius/athena
  • turnerm/athena
  • vcairo/athena
  • sutt/athena
  • ldc/athena
  • stsuno/athena
  • jmacdona/athena
  • mehlhase/athena
  • yunju/athena
  • mbandier/athena
  • jufische/athena
  • jdandoy/athena
  • kwhalen/athena
  • dzanzi/athena
  • nasbah/athena
  • bmorgan/athena
  • kzoch/athena
  • amete/athena
  • msaimper/athena
  • rcarney/athena
  • williams/athena
  • kkohler/athena
  • coccaro/athena
  • shhirose/athena
  • cheidegg/athena
  • hhibi/athena
  • loch/athena
  • nova/athena
  • cdeutsch/athena
  • heng/athena
  • ynoguchi/athena
  • todorova/athena
  • sjiggins/athena
  • campanel/athena
  • bgokturk/athena
  • wbalunas/athena
  • hrussell/athena
  • aytul/athena
  • hoide/athena
  • jbiswal/athena
  • xju/athena
  • lidiaz/athena
  • kpachal/athena
  • kegraham/athena
  • yuchou/athena
  • guerrero/athena
  • dhayden/athena
  • bouhova/athena
  • alwang/athena
  • mverissi/athena
  • omeshkov/athena
  • alopezso/athena
  • mvanadia/athena
  • soumya/athena
  • mvessell/athena
  • ssantpur/athena
  • kenelson/athena
  • fmeloni/athena
  • ruyuan/athena
  • igrabows/athena
  • upatel/athena
  • mhank/athena
  • dshope/athena
  • tvarol/athena
  • korona/athena
  • anperrev/athena
  • cowagner/athena
  • eramakot/athena
  • dbogavac/athena
  • tursom/athena
  • fsforza/athena
  • tnobe/athena
  • derue/athena
  • chinderk/athena
  • koffas/athena
  • fgiuli/athena
  • angianni/athena
  • falonso/athena
  • ballbroo/athena
  • myexley/athena
  • tphamleh/athena
  • davidek/athena
  • diehl/athena
  • ekajomov/athena-general
  • hansenph/athena
  • sarbiolv/athena
  • salvator/athena
  • mfujimot/athena
  • jhaley/athena
  • masato/athena
  • hirose/athena
  • jmendes/athena
  • stapiaar/athena
  • ffabbri/athena
  • tpelzer/athena
  • nwenke/athena
  • stavrop/athena
  • gia/athena
  • agbet/athena
  • hmildner/athena
  • kkrizka/athena
  • dbabal/athena
  • temoskal/athena
  • juesseiv/athena
  • cdelitzs/athena
  • ckitsaki/athena
  • dwallace/athena
  • asonay/athena
  • lferencz/athena
  • iaizenbe/athena
  • eschanet/athena
  • pmeiring/athena
  • czhou/athena
  • liberato/athena
  • jteoh/athena
  • jiawei/athena
  • mromano/athena
  • rustem/athena
  • wachan/athena
  • jbeirer/athena
  • sswatman/athena
  • ranovotn/athena
  • miqueits/athena
  • nielsenj/athena
  • eparrish/athena
  • asquith/athena
  • elmsheus/athena
  • markowen/athena
  • fuhe/athena
  • nicholas/athena
  • dakoch/athena
  • mhance/athena
  • jkempste/athena
  • aranzazu/athena
  • ndegroot/athena
  • esoldato/athena
  • asoukhar/athena
  • tjunkerm/athena
  • aporeba/athena
  • lihan/athena
  • sschramm/athena
  • ginaciog/athena
  • mdelmast/athena
  • verducci/athena
  • mswiatlo/athena
  • pliu/athena
  • anmrodri/athena
  • martis/athena
  • scamarda/athena
  • ssaha/athena
  • bcarlson/athena
  • lstocker/athena
  • fastcalosim_test/athena
  • gabarone/athena
  • mxia/athena
  • guindon/athena
  • rlongo/athena
  • mdonasci/athena
  • chelling/athena
  • amoussa/athena
  • conde/athena
  • mmittal/athena
  • hmaguire/athena
  • ffollega/athena
  • gialas/athena
  • sberlend/athena
  • fcostanz/athena
  • shion/athena
  • sschmitt/athena
  • acts/athena
  • cgutscho/athena
  • nifomin/athena
  • zsoumaim/athena
  • eriefel/athena
  • evarnes/athena
  • akotsoke/athena
  • guescini/athena
  • dwilbern/athena
  • laforge/athena
  • jkremer/athena
  • susy-hackers/athena
  • llorente/athena
  • haozturk/athena
  • rpoggi/athena
  • kkoeneke/athena
  • istin/athena
  • rkarnam/athena
  • fizisist/athena
  • acanesse/athena
  • chenlian/athena
  • fengyu/athena
  • cmerlass/athena
  • ysmirnov/athena_old
  • ivivarel/athena
  • navarrjo/athena
  • sanchevi/athena
  • bulekov/athena
  • amulski/athena
  • sefernan/athena
  • pkramer/athena
  • vcavalie/athena
  • yanlin/athena
  • jgonski/athena
  • restevam/athena
  • smwang/athena
  • mmazza/athena
  • bauerpa/athena
  • thsjurse/athena
  • mmlynars/athena
  • iyeletsk/athena
  • wobisch/athena
  • itrandaf/athena
  • almgadm/athena
  • csebasti/athena
  • jhinds/athena
  • tiyang/athena
  • mtchijov/athena
  • mwielers/athena
  • lapereir/athena
  • zuysal/athena
  • lmiller/athena
  • emmat/athena
  • aleopold/athena
  • lucam/athena
  • rbalasub/athena
  • kciesla/athena
  • pekman/athena
  • wmccorma/athena
  • masaito/athena
  • somadutt/athena
  • kkreul/athena
  • salderwe/athena
  • simmons/athena
  • jstupak/athena
  • adye/athena
  • ycoadou/athena
  • ilongari/athena
  • wtaylor/athena
  • pinamont/athena
  • kbelobor/athena
  • ssahin/athena
  • jzeng/athena
  • aoneill/athena
  • dmaximov/athena
  • kghorban/athena
  • gcallea/athena
  • cschiavi/athena
  • fbartels/athena
  • ljeanty/athena
  • kasai/athena
  • jraine/athena
  • mcfayden/athena
  • brottler/athena
  • scarra/athena
  • khanov/athena
  • ecarlson/athena
  • aelmouss/athena
  • rozeny/athena
  • gotero/athena
  • nbelyaev/athena
  • abandyop/athena
  • aohatl/athena
  • rebeca/athena
  • joheinri/athena
  • bigliett/athena
  • doglioni/athena
  • pmoskvit/athena
  • alaperto/athena
  • bhonan/athena
  • amarzin/athena
  • rgarg/athena
  • dpudzha/athena
  • jajimene/athena
  • paulama/athena
  • begalli/athena
  • yajun/athena
  • mpokidov/athena
  • mtesta/athena
  • atlidali/athena
  • vcroft/athena
  • lbozianu/athena
  • barak/athena
  • torrence/athena
  • wprzygod/athena
  • demelian/athena
  • roward/athena
  • sgalantz/athena
  • atsirigo/athena
  • tofitsch/athena
  • hacooke/athena
  • csander/athena
  • elrossi/athena
  • amoroso/athena
  • salnikov/athena
  • mmiralle/athena
  • ozaplati/athena
  • jsabater/athena
  • alory/athena
  • jdevivi/athena
  • pottgen/athena
  • ruth/athena
  • ymino/athena
  • pbokan/athena
  • cappelt/athena
  • klin/athena
  • trinn/athena
  • xiaoning/athena
  • xchen/athena
  • apetukho/athena
  • nelsonc/athena
  • ratkin/athena
  • nishu/athena
  • paramon/athena
  • juhofer/athena
  • bleban/athena
  • enarayan/athena
  • acassim/athena
  • exot-27/athena
  • dpizzi/athena
  • ztarem/athena
  • bburghgr/athena
  • qhu/athena
  • sampson/athena
  • mmarjano/athena
  • pagessin/athena
  • ychow/athena
  • mkrivos/athena
  • hessey/athena
  • nviauxma/athena
  • watsona/athena
  • wfawcett/athena
  • LichtenbergGroup/athena
  • ibordule/athena
  • perj/athena
  • othielma/athena
  • jreich/athena
  • mleblanc/athena
  • jdegens/athena
  • ztao/athena
  • pmendesa/athena
  • sridouan/athena
  • hasada/athena
  • kristin/athena
  • wgeorge/athena
  • alainb/athena
  • yama/athena
  • xiaohu/athena
  • bachacou/athena
  • ludovica/athena
  • yake/athena
  • ssu/athena
  • angerami/athena
  • jlsmith/athena
  • rnayak/athena
  • pebaron/athena-weights
  • musafdar/athena
  • ktsuri/athena
  • mproffit/athena
  • jezequel/athena
  • amendesj/athena
  • hschwart/athena
  • rerrabai/athena
  • gproto/athena
  • lhelary/athena
  • asalzbur/athena
  • csamoila/athena
  • lbeemste/athena
  • malgren/athena
  • tiany/athena
  • mprincip/athena
  • spolacek/athena
  • grabanal/athena
  • asantra/athena
  • bmondal/athena
  • aczirkos/athena
  • jreidels/athena
  • kyamaguc/athena
  • jroloff/athena
  • silvinha/athena
  • tboeckh/athena
  • tdiasdov/athena
  • slawlor/athena
  • holau/athena
  • mdhlamin/athena
  • bozek/athena
  • lkrauth/athena
  • emily/athena
  • iramirez/athena
  • carlod/athena
  • mgrabois/athena
  • bbrueers/athena
  • mtian/athena
  • oducu/athena
  • bcole/athena
  • ecelebi/athena
  • idinu/athena
  • jjwilkin/athena
  • dhirsch/athena
  • roishi/athena
  • yuanchan/athena
  • ygo/athena
  • hmoyanog/athena-4-mr
  • skorn/athena
  • ggustavi/athena
  • diwillia/athena
  • exochell/athena
  • sbiryuko/athena
  • cgarner/athena
  • scalvet/athena
  • changqia/athena
  • honguyen/athena
  • atsiamis/athena
  • jizamora/athena
  • jwspence/athena
  • calpigia/athena
  • dhangal/athena
  • yangx/athena
  • rysawada/athena
  • adimitri/athena
  • cmarcon/athena
  • atlidbs/athena
  • kpetukho/athena
  • iene/athena
  • tqiu/athena
  • tbisanz/athena
  • dopasqua/athena
  • jspah/athena
  • athaler/athena
  • tzenis/athena
  • jcardena/athena
  • jkretz/athena
  • hzuchen/athena
  • lveloce/athena
  • ryamaguc/athena
  • fdelrio/athena
  • maliev/athena
  • oshukrun/athena
  • mbiros/athena
  • tsano/athena
  • mumohdso/athena2
  • okumura/athena
  • dmunozpe/athena
  • iwang/athena
  • sagara17/athena
  • arennie/athena
  • mumohdso/athena
  • valentem/athena
  • atate/athena
  • evguillo/athena
  • koshimiz/athena
  • rhayes/athena
  • dossantn/athena
  • caforio/athena
  • zhijie/athena
  • zearnsha/athena
  • bnachman/athena
  • hlin/athena
  • maly/athena
  • suyounas/athena
  • rjoshi/athena
  • yuzhan/athena
  • machitis/athena
  • crougier/athena
  • lunedic/athena
  • mtost/athena
  • lvannoli/athena
  • ndebiase/athena
  • mimarine/athena
  • saclawso/athena
  • thompson/athena
  • dounwuch/athena
  • omezhens/athena
  • cprat/athena
  • jonierma/athena
  • nkakati/athena
  • hhanif/athena
  • echeu/athena
  • csauer/athena
  • mischott/athena
  • martinpa/athena
  • sahinsoy/athena
  • inaryshk/athena
  • jodamp/athena
  • wendlanb/athena
  • tiknight/athena
  • lkeszegh/athena
  • knikolop/athena
  • fedin/athena
  • xchu/athena
  • adik/athena
  • jaoliver/athena
  • angrigor/athena
  • pbellos/athena
  • lbaltes/athena
  • idrivask/athena
  • echeremu/athena
  • aikoulou/athena
  • ignesi/athena
  • eschopf/athena
  • ntamir/athena
  • pyanezca/athena
  • sadykov/athena
  • haweber/athena
  • algilber/athena
  • hiito/athena
  • sgurdasa/athena
  • pamachad/athena
  • tteixeir/athena
  • mdrozdov/athena
  • pbhattar/athena
  • tavandaa/athena
  • veellajo/athena
  • bsaifudd/athena
  • fdibello/athena
  • nheatley/athena
  • wolter/athena
  • dparedes/athena
  • fsili/athena
  • mzhai/athena
  • hsimpson/athena
  • zyan/athena
  • mrenda/athena
  • minaenko/athena
  • emmarsha/athena
  • chchau/athena
  • rkusters/athena
  • edweik/athena
  • zhangr/athena
  • jburzyns/athena
  • javanden/athena
  • zmarshal/athena
  • phkenned/athena
  • slai/athena
  • kkrowpma/athena
  • awilhahn/athena
  • agaa/athena
  • zfeng/athena
  • leevans/athena
  • llaatu/athena
  • stsigari/athena
  • srdas/athena
  • metsai/athena
  • adonofri/athena
  • zifeng/athena
  • atropina/athena
  • drousso/athena
  • seggebre/athena
  • atlaspmb/athena
  • cleonido/athena
  • yuanda/athena
  • mnoury/athena
  • arombola/athena
  • ademaria/athena
  • eyamashi/athena
  • kchoi/athena
  • dgillber/athena
  • ijuarezr/athena
  • zang/athena
  • axiong/athena
  • saktas/athena
  • matakagi/athena
  • amdesai/athena
  • berkeleylab/lowmutracking/athena
  • nlopezca/athena
  • fbendebb/athena
  • qibin/athena
  • acanbay/athena
  • jferrand/athena
  • bshresth/athena
  • tbuanes/athena
  • otheiner/athena-official
  • cbuitrag/athena
  • klassen/athena
  • egodden/athena
  • hpotti/athena
  • mfarring/athena
  • hawatson/athena
  • chonghao/athena
  • dzengerj/athena
  • parodi/athena
  • vtudorac/athena
  • knakkali/athena
  • bballard/athena
  • dcieri/athena
  • buboehm/athena
  • lmontana/athena
  • zhuyi/athena
  • cimcp/athena
  • weixi/athena
  • adaribay/athena
  • iliadis/athena
  • cantel/athena
  • duperrin/athena
  • kbenkend/athena
  • asansar/athena
  • czodrows/athena
  • jburr/athena
  • dkoeck/athena
  • bstanisl/athena
  • blumen/athena
  • frenner/athena
  • isotarri/athena
  • mfewell/athena
  • eegidiop/athena
  • smitani/athena
  • alsala/athena
  • miholzbo/athena
  • amincer/athena
  • yulei/athena
  • clantz/athena
  • gshatri/athena
  • olangrek/athena
  • jmharris/athena
  • hpang/athena
  • otheiner/athena
  • gripelli/athena
  • jgargan/athena
  • tizuo/athena
  • ewatton/athena
  • mleigh/athena
  • rushioda/athena
  • preselection-hackathon/athena
  • sfranche/athena
  • smeriano/athena
  • mfernoux/athena
  • deniso/athena
  • chandler/athena
  • bernardo/athena
  • viruelas/athena
  • jnitschk/athena
  • yusano/athena
  • pebaron/athena-td
  • ksugizak/athena
  • anghosh/ef-anindya
  • hriani/athena
  • skaur/athena
  • davetisy/athena
  • sroygara/athena
  • jgombas/athena
  • vcepaiti/athena
  • yochi/athena
  • wsherman/athena
  • rtagami/athena
  • pakontax/athena
  • apsallid/athena
  • yuanj/athena
  • abunka/athena
  • agavrily/athena
  • dmclaugh/athena
  • chji/athena
  • mcgensvc/athena
  • dmahon/athena
  • almay/athena
  • giagu/athena
  • mshapiro/athena
  • cjmeyer/athena
  • qberthet/athena
  • yuwen/athena
  • dkobylia/athena
  • ekay/athena
  • islazyk/athena
  • glamprin/athena
  • mbarel/athena
  • rdinardo/athena
  • baitbenc/athena
  • osalin/athena
  • dakiyama/athena
  • mlanzacb/athena
  • cgrefe/athena
  • minlin/athena
  • kazhang/athena
  • wsfreund/athena
  • szambito/athena
  • hwilkens/athena
  • pebaron/athena
  • beringer/athena
  • enagy/athena
  • schaffer/athena
  • yyap/athena
  • tkharlam/athena
  • menke/athena
  • mspalla/athena
  • fcalosim/athena
  • mavogel/athena
  • smobius/athena
  • mduehrss/athena
  • spagan/athena
  • osunnebo/athena
  • rateixei/athena
  • dportill/athena
  • carquin/athena
  • okiverny/athena
  • desilva/athena
  • jelena/athena
  • chhayes/athena
  • satom/athena
  • jwalder/athena
  • sanmay/athena
  • lmijovic/athena
  • junpei/athena
  • mcarnesa/athena
  • tilebeam/athena
  • jahreda/athena
  • jedebevc/athena
  • kiabelin/athena
  • jstark/athena
  • delsart/athena
  • silu/athena
  • krbjoerk/athena
  • vtskhaya/athena
  • cyoung/athena
  • mtogawa/athena
  • jtanaka/athena
  • haoran/athena
  • luxin/athena
  • yifany/athena
  • danning/athena
  • maslawin/athena
  • faser/offline/athena
  • minghui/athena
  • srettie/athena
  • beddall/athena
  • dcasperfaser/athena
  • almeidvi/athena
  • cfan/athena
  • mmontell/athena
  • kazheng/athena
  • vmartin/athena
  • sudha/athena
  • beltran/athena-fork
  • kgupta/athena
  • lgagnon/athena
  • pajones/athena
  • ssinha/athena
  • lhenkelm/athena
  • dpanchal/athena
  • anbaraja/athena
  • amorenos/athena
  • serodrig/athena
  • joana/athena
  • kkawade/athena
  • jshahini/athena
  • mtanasin/athena
  • vbuxbaum/athena
  • chiodini/athena
  • apalazzo/athena
  • kburka/athena
  • lfeligio/athena
  • ehaines/athena
  • gonzalri/athena
  • mdidenko/athena
  • desengup/athena
  • gottino/athena
  • jaofferm/athena
  • rmazini/athena
  • sabidi/athena
  • bkerridg/athena
  • qidong/athena
  • gavrilen/athena
  • dwkim/athena
  • ktackman/athena
  • cdimitri/athena
  • hazeng/athena
  • yche/athena
  • jingjing/athena
  • yoyeh/athena
  • ktopolni/athena
  • sgaid/athena
  • dabattul/athena
  • attrtcal/athena
  • thmaurin/athena
  • bochen/athena
  • asciandr/athena
  • chjiang/athena
  • mischott/athena-22
  • krdona/athena
  • lbazzano/athena
  • rushioda/athena-3
  • dtorresa/athena
  • meiqi/athena
  • pclark/athena
  • aaikot/athena
  • kvidalgu/athena
  • nlad/athena
  • hmoyanog/athena
  • aackerma/athena
  • yingjun/athena
  • xinfei/athena
  • jcurran/athena
  • kazheng/athena-physics-val-2023
  • maboelel/athena
  • mschefer/athena
  • xinhui/athena
  • rmakhman/athena
  • lesplend/athena
  • aivina/athena
  • shhan/athena
  • zhiliang/athena
  • zoduan/athena
  • jlue/athena
  • bdixit/athena
  • liuk/athena
  • sfrances/athena
  • ragrabar/athena
  • alsidley/athena
  • xingguo/athena
  • shahzad/athena
  • asehrawa/athena
  • kyjones/topoetcone-removal
  • niabicht/athena
  • keener/athena
  • yunagai/athena
  • mhoppesc/athena
  • llewitt/athena
  • lcalic/athena-backup
  • adohnalo/athena
  • greynold/athena
  • kazheng/athena-workingpoint
  • agentry/athena
  • bschlag/athena
  • yinmiao/athena
  • bruckman/athena
  • kbhide/athena
  • nkang/athena
  • drankin/athena
  • asmaga/athena
  • hvanders/athena
  • tbeumker/athenatest
  • ladamczy/test
  • tbeumker/athena
  • berkeleylab/acts/athena
  • losanti/athena-23
  • weitao/athena
  • losanti/athena
  • wsong/athena
  • jiturriz/athena
  • dmankad/athena-idle
  • menu-hackathon/athena
  • toobauma/athena
  • vmaksimo/athena
  • kyjones/trigger-example
  • dawerner/athena
  • edreyer/athena
  • fisopkov/athena
  • seggebre/athena-fluencemap-modification
  • gtarna/athena
  • SecVtx-Lancaster/Athena
  • smanzoni/athena
  • lprimomo/athena
  • maparo/athena
  • pgraveli/athena
  • adimri/athena
  • shmukher/athena
  • aackerma/atlas-athena
  • wstanek/athena
  • jcrosby/athena
  • rsnyder/athena
  • lrambell/athena
  • atlas-sa-uct/athena
  • tovsiann/athena
  • skita/athena
  • ppotepa/athena
  • eullmank/athena
  • mhemmett/athena
  • zgao/athena
  • xmapekul/athena
  • lroos/athena
  • achakrav/athena
  • rashbypi/athena
  • evitale/athena
  • kgoto/athena
  • arej/athena
  • ivyas/athena
  • thmaurin/athena-sim-flavour
  • epasqual/athena
  • lkretsch/athena
  • aleksand/athena
  • npond/athena
  • jebohm/athena
  • mbiyabi/athena
  • hluk/athena
  • cvittori/athena
  • aralves/athena
  • dbiswas/athena
  • dkoeck/anniathenafork
  • mkareem/athena
  • mihe/athena
  • tslee/athena
  • croland/athena
  • rgupta/athena
  • mhaacke/athena
  • cgarvey/athena
  • feickert/athena
  • kesedlac/athena
  • ctosciri/athena-old
  • ctosciri/athena
  • pkumari/athena
  • asoflau/athena
  • bscheuer/athena
  • agerwin/athena
  • bdixit/masking-strip-modules
  • ricunnin/athena
  • gfrattar/athena
  • gwilliam/athena
  • gtolkach/athena
  • ksudo/athena
  • jfeng2/athena
  • gaofeng/athena
  • rhiguchi/athena
  • svanstro/athena
  • vaustrup/athena
  • kosuzuki/athena
  • etoyoda/athena
  • rmizuhik/athena
  • hart/athena
  • kkanke/athena
  • whopkins/athena
  • tnakagaw/athena
  • dduda/athena
  • amakita/athena
  • maoki/athena
  • miyamada/athena
  • tpaschoa/athena
  • rishikaw/athena
  • anayaz/athena
  • aagaard/athena
  • ferusso/athena
  • evalient/athena
  • smweber/athena-run-3
  • smweber/athena
  • shudong/athena
  • evalient/athena-dnn-calculator
  • zyan/athena-muon-calib
  • zyan/athena-muon-calib-stream
  • strom/athena-dms
  • dellacqu/athena
  • glagafon/project-nimber-1
  • strom/athena
  • brosser/athena
  • jsallen/athena
  • sbellman/athena
  • macretar/athena
  • aowang/athena
  • skadir/athena-sadaf
  • ooncel/athena
  • leguo/athena
  • jhoya/athena
  • osotosan/athena
  • glagafon/handi-project
  • tygeorge/athena
  • glagafon/handi-project-1
  • hasun/athena
  • wuxi/athena
  • syan/athena-syan
  • aborbely/athena
  • mnorfolk/athena
  • will/athena
  • axgallen/athena-qualification-task
  • schernau/athena
  • karakawa/athena
  • taogawa/athena
  • mmaroun/ravina-fork
  • seinfant/athena
  • dmankad/athena-gen
  • axgallen/athena
  • romar/athena
  • tmlinare/athena
  • dhagan/athena
  • agarabag/athena
  • ktariq/athena
  • vlysenko/athena
  • zuzak/athena
  • tizhang/athena
  • mahorstm/athena
  • ibamwidh/athena
  • ipolishc/athena
  • frfische/athena
  • atishelm/athena
  • jolamber/athena
  • ykhoulak/myathena
  • xilin/athena
  • jlue/athena-latest
  • dntounis/athena
  • huayu/athena
  • yil/athena
  • chuanye/athena
  • nkua-atlas/athena
  • tayoshid/athena
  • kifarman/athena
  • nischmit/athena
  • lderamo/athena
  • dtruncal/athena
  • steinber/athena-main
  • tdingley/athena
  • movincen/athena
  • kazheng/athena-acts
  • dongyi/athena
  • malvesca/athena
  • hasegawa/athena
  • glagafon/dq-optimize
  • mnowak/athena
  • openc/athena
  • ekajomov/athena-fork-fix
  • lcalic/athena
  • ladamczy/athena
  • mhufnage/athena
  • rqian/athena
  • lsultana/obsolete_athena
  • lsultana/athena
  • anfortma/athena
  • yonoda/athena
  • pebaron/athena-leprem
  • alveltma/athena
  • alpleban/athena
  • mmaheshw/athena
  • jdavidso/athena
  • kfung/athena
  • anstein/athena
  • gbird/athena
  • edcritel/athena
  • mfurukaw/athena
  • bglik/athena
  • midandre/athena
  • anhodges/athena
  • sokkerma/athena
  • mvivasal/athena
  • asbrooks/athena
  • kyjones/athena
  • jmcgowan/athena
  • mveen/athena
  • mmlynars/athena-v-2
  • tburatov/athena
  • fcurcio/athena
  • lboccard/athena
  • dmankad/athena
  • joroemer/athena
  • ctaybi/athena
  • tayoshid/athena-test
  • jodafons/athena
  • ivyoung/athena
  • drasslof/athena
  • sanchezj/athena-2022
  • tmclachl/athena
  • jiddon/athena
  • sdemiran/athena
  • anburger/athena
  • apfleger/athena
  • sdahbi/athena
  • goblirsc/athena
  • sidoti/athena
  • fwinkel/athena
  • izahir/athena
  • rvinasco/athena
  • sanchezj/athena
  • mmoors/athena
  • jwkraus/athena
  • esimpson/athena
  • rhaberle/athena
  • obut/athena
  • janders/athena
  • klleras/athena
  • jhowarth/athena
  • jchapman/athena
  • dta/athena_old
  • avallier/athena
  • mungo/athena
  • jecouthu/athena
  • dtrischu/athena
  • fmontere/athena
  • fhenry/athena
  • sfuenzal/athena
  • awharton/Athena
  • misantan/athena
  • zhaotong/athena
  • zalegria/athena
  • acordeir/athena-ed
  • shaoguan/athena
  • gdigrego/athena
  • pdougan/athena
  • amelo/athena
  • nbruscin/athena
  • caiy/athena
  • mkholoda/athena
  • peiyan/athena
  • gfacini/athena
  • backes/athena
  • tayoshid/athena-2024
  • bcervato/athena
  • fkirfel/athena
  • kchu/athena
  • esampson/athena-idart
  • shpeng/athena-2
  • gmercado/athena
  • fwinkl2/athena
  • rhowen/athena
  • gmascare/athena
  • esampson/athena-idart-2
  • yvolkotr/athena
  • djlewis/athena
  • costanzo/athena
  • nharriso/athena
  • pibutti/athena
  • yuematsu/athena
  • esampson/athena-otp
  • alpleban/athena-met
  • wcastigl/athena
  • astefl/athena
  • bmoser/athena
  • esampson/athena-june-otp
  • yilin/athena
  • thitchin/athena
  • bdong/athena
  • sosarkar/athena-again
  • ksahan/athena
  • zhanhang/athena
  • msasada/athena
  • okolay/athena
  • agheata/athena
  • txu/athena
  • lbarrade/athena
  • seth/athena
  • robouque/athena
  • dbaronmo/athena
  • esampson/june-2-otp
  • zhangbo/athena
  • mlyukova/athena
  • nsurijr/athena
  • wema/athena
  • damperia/athena-acts
  • eballabe/athena
  • boudreau/athena
  • martyniu/athena
  • vsasse/athena
  • acamplan/athena
  • ksakura/athena
  • bngair/met-significance-r-22
  • bhuth/athena
  • bngair/me-tsig-athena
  • rhicks/athena
  • menadeem/athena
  • atymchys/athena
  • yanqiw/athena
  • vkost/athena
  • domatter/athena
  • linghua/athena
  • arelycg/athena
  • mwessels/athena
  • juscerri/athena
  • biliu/athena
  • skadir/athena
  • sgoswami/athena
  • beltran/athena
  • sosarkar/athena
  • bdebjani/athena
  • ddicroce/athena
  • dreikher/athena
  • hshaddix/athena
  • mhabedan/athena
  • lwinkler/athena
  • emoon/athena
  • cleong/athena
  • sdiefenb/athena-onnx-tutorial
  • fladias/athena
  • elham/athena
  • haren/athena
  • mads/athena
  • dwilson/athena
  • fivone/athena
  • nkrogh/athena
  • lsanfili/athena
  • thart/athena
  • dahumphr/athena
  • scane/athena
  • kenakamu/athena
  • lifoster/athena
  • echerepa/athena
  • baer/athena
  • glagafon/aaaathena
  • dcamarer/athena
  • alancast/athena
  • glagafon/athena
  • haotianl/athena
  • eskorda/athena
  • salopez/athena
  • rshibata/athena
  • lburke/athena
  • glagafon/glagafon-dq
  • pizhang/athena
  • ukhurshi/athena
  • rvavrick/athena
  • htsoi/athena
  • therwig/athena
  • delitez/athena
  • pachabri/athena
  • mwitkows/athena
  • lcorazzi/athena
  • casadop/athena
  • achamber/athena
  • ezaya/athena
  • mmantina/athena
  • jaburles/athena
  • hzhuang/athena
  • jkrupa/athena
  • rmole/athena
  • lmonaco/athena
  • mfornasi/athena
  • mamirono/athena
  • rpozzi/athena
  • gserenis/athena
  • semami/athena
  • jinglis/athena
  • fdattola/athena
  • belderto/athena
  • uepstein/athena
  • abesir/athena
  • ljerala/athena
  • cmavungu/athena
  • lechols/athena
  • jajohnso/athena
  • jlittle/athena
  • lopezzot/athena
  • htorre/athena
  • robouque/athena-20241115
  • tneep/athena
  • rmole/athena-personal-fork
  • lbrown/athena
  • wguerin/athena
  • fsiegert/athena
  • wenjingw/athena
  • kfang/athena-fork-kyfang
  • jackersc/athena
  • wasu/athena
  • epompapa/athena
  • prmitra/athena
  • kgrimm/athena-kgrimm
  • ashirazi/athena
  • nihartma/athena
  • toheintz/athena
  • amoreira/athena
  • aslobodk/athena
  • kdipetri/athena
  • goetz/athena-acts
  • gfazzino/athena
  • muschmid/athena
  • yazhou/athena
  • falves/athena
  • alarnold/athena
  • djuarezg/athena
  • wlai/athena
  • mdacunha/athena
  • rohasan/athena
  • mborodin/athena
  • asickles/athena
  • novotnyp/athena
  • ibenaoum/athena
  • adsalvad/athena
  • alecrhys/athena
  • lvicenik/athena
  • mfarzali/athena
  • zetao/athena
  • christog/athena
  • tflee/athena
  • frcastig/athena
  • kkazakov/athena
  • llarson/athena
  • jusilva/athena
  • ehampshi/athena
  • exochell/my-athena
  • tomoya/athena-low-pt-muon-rec
  • pusharma/athena
  • gpinheir/athena
  • mojeda/athena
  • hshaddix/athena-hshaddix
  • jecifuen/athena
  • jlieberm/athena
  • vchabala/athena
  • chhultqu/athena
  • nshtokha/athena
  • jlai/athena
  • nsur/athena-lund
  • misavic/athena
  • camccrac/athena
  • pmourafr/athena
  • yuxuanz/local-athena
  • yukari/athena
  • sizumiya/athena
  • akraus/athena
  • zhubacek/athena
  • sawyer/athena
  • mfilipig/athena
  • mnegrini/athena
  • rkavak/athena
  • yanqiw/athena-acts-for-run-3-silicon-tracking
  • zrokavec/athena
  • fdejean/athena
  • beyeo/athena
  • ssuravar/athena
  • gipoddar/athena
  • gsalvi/athena
  • sutuncay/athena
  • vpires/athena-vasco
  • ywng/athena
  • mtancock/athena-2
  • ndiasper/athena
  • stlin/athena
  • fballi/athena
  • hadavand/athena
1578 results
Show changes
Commits on Source (179)
Showing
with 295 additions and 131 deletions
......@@ -228,21 +228,24 @@ public:
private:
const CaloDetDescrManager* caloMgr() const;
std::string m_depth_choice;
Gaudi::Property<std::string> m_depth_choice{ this,
"DepthChoice",
"",
"depth choice" };
/** ID Helper
*/
const CaloCell_ID* m_calo_id;
/** ID Helper
*/
const CaloCell_ID* m_calo_id;
/** DD manager
*/
CxxUtils::CachedPointer<CaloDetDescrManager> m_calo_dd;
/** DD manager
*/
CxxUtils::CachedPointer<CaloDetDescrManager> m_calo_dd;
/** Phi range helper object
*/
CaloPhiRange m_range;
/** Phi range helper object
*/
CaloPhiRange m_range;
double m_default;
double m_default;
};
......
......@@ -38,12 +38,10 @@ CaloDepthTool::CaloDepthTool(const std::string& type,
const std::string& name,
const IInterface* parent) :
AthAlgTool(type, name, parent),
m_depth_choice(""),
m_calo_id(nullptr),
m_default(0)
{
declareInterface<CaloDepthTool>( this );
declareProperty("DepthChoice", m_depth_choice,"choice of depth paramaterisation" );
}
CaloDepthTool::~CaloDepthTool()
......
# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
# File: CaloRec/python/CaloBCIDAvgAlgSCConfig.py
# Purpose: Configure CaloBCIDAvgAlgSC.
from __future__ import print_function
from AthenaConfiguration.ComponentFactory import CompFactory
from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
def CaloBCIDAvgAlgSCCfg (flags, sequence=None):
result = ComponentAccumulator()
from CaloRec.CaloBCIDLumiCondAlgSCConfig import CaloBCIDLumiCondAlgSCCfg
result.merge (CaloBCIDLumiCondAlgSCCfg (flags))
result.addEventAlgo(CompFactory.CaloBCIDAvgAlg(
name="CaloBCIDAvgAlgSC",
IsSuperCell=True,
BCIDLumiKey="CaloBCIDLumiSC",
WriteKey="CaloBCIDAverageSC"), sequenceName=sequence)
return result
# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
# File: CaloRec/python/CaloBCIDCoeffsCondAlgSCConfig.py
# Purpose: Configure CaloBCIDCoeffsCondAlgSC.
from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
from AthenaConfiguration.ComponentFactory import CompFactory
def CaloBCIDCoeffsCondAlgSCCfg (flags, name = 'CaloBCIDCoeffsCondAlgSC', **kwargs):
acc = ComponentAccumulator()
if not flags.Input.isMC:
#Data case
pass
else:
#MC case
kwargs.setdefault("MCSymKey", '')
from LArRecUtils.LArRecUtilsConfig import LArOFCSCCondAlgCfg
acc.merge(LArOFCSCCondAlgCfg(flags))
kwargs.setdefault("OFCKey", 'LArOFCSC')
requiredConditions=["PileupAverageSC","ShapeSC"]
from LArConfiguration.LArElecCalibDBConfig import LArElecCalibDBMCSCCfg
acc.merge(LArElecCalibDBMCSCCfg(flags,requiredConditions))
#conddb.addFolder("LAR_OFL","/LAR/ElecCalibMCSC/LArPileupAverage<tag>LARElecCalibMCSCLArPileupAverage-IOVDEP-00</tag>",className="CondAttrListCollection"
kwargs.setdefault("MinBiasAvgKey", "LArPileupAverageSC")
kwargs.setdefault("ShapeKey", "LArShapeSC")
kwargs.setdefault("OutputCoeffsKey", 'CaloBCIDCoeffsSC')
kwargs.setdefault("IsSuperCell", True)
acc.addCondAlgo (CompFactory.CaloBCIDCoeffsCondAlg(name, **kwargs))
return acc
# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
# File: CaloRec/python/CaloBCIDLumiCondAlgSCConfig.py
# Purpose: Configure CaloBCIDLumiCondAlgSC.
from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
from AthenaConfiguration.ComponentFactory import CompFactory
def CaloBCIDLumiCondAlgSCCfg (flags):
result = ComponentAccumulator()
from CaloRec.CaloBCIDCoeffsCondAlgSCConfig import CaloBCIDCoeffsCondAlgSCCfg
result.merge (CaloBCIDCoeffsCondAlgSCCfg (flags))
if not flags.Input.isMC:
from LumiBlockComps.LuminosityCondAlgConfig import LuminosityCondAlgCfg
result.merge (LuminosityCondAlgCfg (flags))
else:
from LumiBlockComps.BunchCrossingCondAlgConfig import BunchCrossingCondAlgCfg
result.merge (BunchCrossingCondAlgCfg(flags))
CaloBCIDLumiCondAlg = CompFactory.CaloBCIDLumiCondAlg # CaloRec
alg = CaloBCIDLumiCondAlg ('CaloBCIDLumiCondAlgSC',
CoeffsKey = 'CaloBCIDCoeffsSC',
BunchCrossingCondDataKey = 'BunchCrossingData',
LuminosityCondDataKey = 'LuminosityCondData',
isMC = flags.Input.isMC,
OutputLumiKey = 'CaloBCIDLumiSC')
result.addCondAlgo (alg)
return result
......@@ -39,6 +39,13 @@ def CaloRecoCfg(configFlags, clustersname=None,doLCCalib=None):
from CaloRec.CaloFwdTopoTowerConfig import CaloFwdTopoTowerCfg
result.merge(CaloFwdTopoTowerCfg(configFlags,CaloTopoClusterContainerKey="CaloTopoClusters"))
#Configure NoisyROSummary
from LArCellRec.LArNoisyROSummaryConfig import LArNoisyROSummaryCfg
result.merge(LArNoisyROSummaryCfg(configFlags))
from LArROD.LArFebErrorSummaryMakerConfig import LArFebErrorSummaryMakerCfg
result.merge(LArFebErrorSummaryMakerCfg(configFlags))
return result
......
......@@ -26,6 +26,7 @@
#include "CaloIdentifier/CaloCell_ID.h"
#include "CaloGeoHelpers/CaloPhiRange.h"
#include "CaloDetDescr/CaloSubdetNames.h"
#include "CaloDetDescr/CaloDepthTool.h"
#include <mutex>
#include <vector>
......@@ -33,7 +34,6 @@
class CaloDetDescrManager;
class ICaloCoordinateTool;
class IMessageSvc;
class CaloDepthTool;
class ICaloRecoMaterialTool;
class ICaloRecoSimpleGeomTool;
class ICaloSurfaceHelper;
......@@ -162,9 +162,11 @@ private:
ToolHandle<ICaloRecoMaterialTool> m_lar_mat;
ToolHandle<ICaloRecoSimpleGeomTool> m_lar_simplegeom;
// Defines the depths for DD and User surfaces :
ToolHandle<CaloDepthTool> m_calodepth;
// Defines the depths for DD and User surfaces :
ToolHandle<CaloDepthTool> m_calodepth{ this,
"CaloDepthTool",
"CaloDepthTool/CaloDepthTool",
"CaloDepthTool to be used" };
};
inline std::vector<std::pair<const Trk::Surface*,const Trk::Surface*> > CaloSurfaceBuilder::entrySurfaces() const
......
......@@ -38,7 +38,6 @@
#include "CaloDetDescr/CaloDetDescriptor.h"
#include "CaloDetDescr/CaloDetDescrElement.h"
#include "CaloDetDescr/ICaloCoordinateTool.h"
#include "CaloDetDescr/CaloDepthTool.h"
#include "CaloDetDescr/ICaloRecoMaterialTool.h"
#include "CaloDetDescr/ICaloRecoSimpleGeomTool.h"
......@@ -65,14 +64,11 @@ CaloSurfaceBuilder::CaloSurfaceBuilder(const std::string& type,
m_calo_dd(nullptr),
m_tile_dd(nullptr),
m_lar_mat("LArRecoMaterialTool"),
m_lar_simplegeom("LArRecoSimpleGeomTool"),
m_calodepth("CaloDepthTool")
m_lar_simplegeom("LArRecoSimpleGeomTool")
{
declareInterface<ICaloSurfaceBuilder>( this );
declareProperty ("LArRecoMaterialTool", m_lar_mat);
declareProperty ("LarRecoSimpleGeometryTool", m_lar_simplegeom);
declareProperty ("CaloDepthTool", m_calodepth);
}
CaloSurfaceBuilder::~CaloSurfaceBuilder()
......
......@@ -12,6 +12,10 @@ atlas_add_library( AthCUDAKernelLib
set_target_properties( AthCUDAKernelLib PROPERTIES
POSITION_INDEPENDENT_CODE ON )
# Disable faulty "declared but never used" warnings for the template code.
target_compile_options( AthCUDAKernelLib PUBLIC
$<$<COMPILE_LANGUAGE:CUDA>:-Xcudafe --diag_suppress=177> )
# Test(s) in the package.
atlas_add_test( ArrayKernelTask
SOURCES test/test_ArrayKernelTask.cu
......
......@@ -6,9 +6,11 @@ from AthenaCommon.Logging import logging
_msg = logging.getLogger('AccumulatorCache')
import functools
import time
from copy import deepcopy
from collections.abc import Hashable
from collections import defaultdict
from dataclasses import dataclass
class AccumulatorDecorator:
"""Class for use in function decorators, implements memoization.
......@@ -24,6 +26,15 @@ class AccumulatorDecorator:
VERIFY_NOTHING = 0
VERIFY_HASH = 1
@dataclass
class CacheStats:
hits : int = 0
misses: int = 0
t_hits: float = 0
t_misses: float = 0
_stats = defaultdict(CacheStats)
def __init__(self , func , size , verify , deepCopy):
"""The constructor is typically called in a function returning a decorator.
......@@ -44,17 +55,35 @@ class AccumulatorDecorator:
self._func = func
self._cache = {}
self._resultCache = {}
self._hits = 0
self._misses = 0
self._verify = verify
self._deepcopy = deepCopy
def __str__(self):
return "|cache size : " + str(len(self._cache)) + " , misses : " + str(self._misses) + " , hits : " + str(self._hits) + " , function : " + str(self._func.__name__) + "|"
if self._verify not in [self.VERIFY_NOTHING, self.VERIFY_HASH]:
raise RuntimeError(f"Invalid value for verify ({verify}) in AccumulatorCache for {func}")
def getInfo(self):
"""Rerurn a dictionary with information about the cache size and cache usage"""
return {"cache_size" : len(self._cache) , "misses" : self._misses , "hits" : self._hits , "function" : self._func , "result_cache_size" : len(self._resultCache)}
"""Return a dictionary with information about the cache size and cache usage"""
return {"cache_size" : len(self._cache),
"misses" : self._stats[self._func].misses,
"hits" : self._stats[self._func].hits,
"function" : self._func,
"result_cache_size" : len(self._resultCache)}
@classmethod
def printStats(cls):
"""Print cache statistics"""
header = "%-70s | Hits (time) | Misses (time) |" % "AccumulatorCache"
print("-"*len(header))
print(header)
print("-"*len(header))
# Print sorted by hit+miss time:
for func, stats in sorted(cls._stats.items(), key=lambda s:s[1].t_hits+s[1].t_misses, reverse=True):
name = f"{func.__module__}.{func.__name__}"
if len(name) > 70:
name = '...' + name[-67:]
print(f"{name:70} | {stats.hits:6} ({stats.t_hits:4.1f}s) | "
f"{stats.misses:6} ({stats.t_misses:4.1f}s) |")
print("-"*len(header))
@classmethod
def suspendCaching(cls):
......@@ -81,6 +110,24 @@ class AccumulatorDecorator:
return None
def __call__(self , *args , **kwargs):
try:
t0 = time.perf_counter()
res, cacheHit = self._callImpl(*args, **kwargs)
return res
finally:
t1 = time.perf_counter()
if cacheHit is True:
self._stats[self._func].hits += 1
self._stats[self._func].t_hits += (t1-t0)
elif cacheHit is False:
self._stats[self._func].misses += 1
self._stats[self._func].t_misses += (t1-t0)
def _callImpl(self , *args , **kwargs):
"""Implementation of __call__.
Returns: (result, cacheHit)
"""
if(AccumulatorDecorator._memoize):
hashable_args = True
for a in args:
......@@ -99,7 +146,7 @@ class AccumulatorDecorator:
if(hsh in self._cache):
res = self._cache[hsh]
cacheHit = None
if(AccumulatorDecorator.VERIFY_HASH == self._verify):
resHsh = self._resultCache[hsh]
chkHsh = None
......@@ -113,28 +160,22 @@ class AccumulatorDecorator:
_msg.debug("Hash of function result, cached using AccumulatorDecorator, not available for verification.")
if((chkHsh is None) or (resHsh is None) or resHsh != chkHsh):
# at least one hash is not available (None) so no verification can be performed
# or
# hashes are different
self._misses += 1
# or hashes are different
cacheHit = False
res = self._func(*args , **kwargs)
self._cache[hsh] = res
self._resultCache[hsh] = None
if(AccumulatorDecorator._hasHash(res)):
self._resultCache[hsh] = AccumulatorDecorator._getHash(res)
else:
self._hits += 1
elif(AccumulatorDecorator.VERIFY_NOTHING == self._verify):
self._hits += 1
cacheHit = True
else:
_msg.debug("Incorrect value of verify in AccumulatorDecorator, assuming AccumulatorDecorator.VERIFY_NOTHING.")
self._hits += 1
cacheHit = True
return (deepcopy(res) if self._deepcopy else res, cacheHit)
if(self._deepcopy):
return deepcopy(res)
else:
return res
else:
self._misses += 1
_msg.debug('Hash not found in AccumulatorCache for function %s' , self._func)
if(len(self._cache) >= self._maxSize):
del self._cache[next(iter(self._cache))]
......@@ -147,23 +188,19 @@ class AccumulatorDecorator:
if(AccumulatorDecorator._hasHash(res)):
self._resultCache[hsh] = AccumulatorDecorator._getHash(res)
self._cache[hsh] = res
elif(AccumulatorDecorator.VERIFY_NOTHING == self._verify):
self._cache[hsh] = res
else:
_msg.debug("Incorrect value of verify in AccumulatorDecorator, assuming AccumulatorDecorator.VERIFY_NOTHING.")
self._cache[hsh] = res
if(self._deepcopy):
return deepcopy(res)
else:
return res
return (deepcopy(res) if self._deepcopy else res, False)
else:
self._misses += 1
return self._func(*args , **kwargs)
_msg.debug('Could not calculate hash of arguments for function %s in AccumulatorCache.' , self._func)
return (self._func(*args , **kwargs), False)
else:
return self._func(*args , **kwargs)
return (self._func(*args , **kwargs), None)
def AccumulatorCache(func = None , maxSize = 128 , verifyResult = AccumulatorDecorator.VERIFY_NOTHING , deepCopy = True):
def AccumulatorCache(func = None, maxSize = 128,
verifyResult = AccumulatorDecorator.VERIFY_NOTHING, deepCopy = True):
"""Function decorator, implements memoization.
Keyword arguments:
......@@ -180,10 +217,7 @@ def AccumulatorCache(func = None , maxSize = 128 , verifyResult = AccumulatorDec
An instance of AccumulatorDecorator.
"""
def newWrapper(funct):
return AccumulatorDecorator(funct , maxSize , verifyResult , deepCopy)
def wrapper_accumulator(func):
return AccumulatorDecorator(func, maxSize, verifyResult, deepCopy)
if(func):
return newWrapper(func)
else:
return newWrapper
return wrapper_accumulator(func) if func else wrapper_accumulator
......@@ -40,6 +40,8 @@ class TestCache(unittest.TestCase):
self.assertEqual(returnSame.__name__ , "returnSame")
self.assertEqual(returnSame.__doc__ , "returns the same number")
AccumulatorDecorator.printStats()
@AccumulatorCache(verifyResult = AccumulatorDecorator.VERIFY_NOTHING , deepCopy = False)
def fac(x):
return hashwrapper(1 if x.x == 0 else x.x * fac(hashwrapper(x.x - 1)).x)
......@@ -291,24 +293,6 @@ class TestCache(unittest.TestCase):
self.assertEqual(info["misses"] , 3)
self.assertEqual(info["cache_size"] , 0)
def runTest(self):
print("... basic tests, simple caching and introspection ...")
self.test_basic()
print("... testing cache limit ...")
self.test_cache_limit()
print("... testing if cached results were modified ...")
self.test_validation()
print("... testing suspend ...")
self.test_suspend()
print("... testing verify copy ...")
self.test_verify_copy()
print("... testing verify default ...")
self.test_verify_default()
if(__name__ == '__main__'):
suite = unittest.TestSuite()
suite.addTest(TestCache())
runner = unittest.TextTestRunner(failfast = False)
runner.run(suite)
if __name__ == '__main__':
unittest.main()
......@@ -68,7 +68,7 @@ namespace Athena_test {
TEST_F( MockxAODJetTest, jetgetAttribute ) {
EXPECT_CALL( mockjet, getAttributeFloat( "test", _ ) )
.WillOnce( DoAll( SetArgReferee<1>( 42 ), Return(true) ) );
.WillOnce( testing::DoAll( SetArgReferee<1>( 42 ), Return(true) ) );
float value;
EXPECT_TRUE( jet->getAttribute<float>( "test", value ) );
EXPECT_EQ( 42, value );
......
# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
from PyUtils.Decorators import memoize
from functools import reduce
from functools import reduce, cache
def _resolve_db_tag(origDbTag):
from AthenaCommon.GlobalFlags import globalflags
......@@ -32,7 +31,7 @@ def _InstanceFromProjectName():
# Set up the bad lb filter conditions algorithm
# Cache instance once already created
@memoize
@cache
def GetBadLBFilterAlg(name, defects, writekey, ignoreRecoverable=False, origDbTag=None):
"""
Configure an instance of the bad LB filter conditions algorithm. Not intended to be called directly by users.
......@@ -119,7 +118,7 @@ def GetBadLBFilterTool(name, defects, alwaysReturnTrue=False, ignoreRecoverable=
return monFilterTool
@memoize
@cache
def LArBadDefectList(origDbTag=None):
"""
Get the defects to configure for LAr - cache results to avoid lots of DB lookups
......
# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
from AthenaConfiguration.ComponentFactory import CompFactory
from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
from AthenaConfiguration.AccumulatorCache import AccumulatorCache
......@@ -74,7 +74,6 @@ def BadLBFilterToolCfg(inputFlags,name, defects, alwaysReturnTrue=False, ignoreR
return result
#@memoize - hash function on flags is deprecated, use AccumulatorCache instead
@AccumulatorCache
def LArDefectList(inputFlags,origDbTag=None):
"""
......
# Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
from PyUtils.Decorators import memoize
from functools import cache
# Set up the event cleaning filter tool
# Cache instances that are already created
@memoize
@cache
def GetEventFlagFilterTool(name, doLAr=True, doTile=True, doSCT=True, doCore=True, alwaysReturnTrue=False):
"""
Configure an instance of the bad LB filter tool. If called twice with the same options, will return the same instance.
......
# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
# @file: AthenaPython/python/Bindings.py
# @author: Sebastien Binet <binet@cern.ch>
from __future__ import print_function
### data
__author__ = """
Sebastien Binet (binet@cern.ch)
"""
### imports
from PyUtils.Decorators import memoize
from functools import cache
from AthenaCommon.Logging import logging
@memoize
@cache
def _load_dict(lib):
"""Helper function to remember which libraries have been already loaded
"""
......@@ -23,7 +21,7 @@ def _load_dict(lib):
lib="lib"+lib
return cppyy.load_library(lib)
@memoize
@cache
def _import_ROOT():
import ROOT
ROOT.gROOT.SetBatch(True)
......@@ -79,7 +77,7 @@ class _PyAthenaBindingsCatalog(object):
return
@staticmethod
@memoize
@cache
def init(name):
"""Initialize the python binding with the callback previously registered
If no callback was registered, swallow the warning...
......@@ -100,7 +98,7 @@ class _PyAthenaBindingsCatalog(object):
return klass
### helper method to easily retrieve services by name -------------------------
@memoize
@cache
def py_svc(svcName, createIf=True, iface=None):
"""
Helper function to retrieve a service by name, using Gaudi python bindings.
......@@ -141,7 +139,7 @@ def py_svc(svcName, createIf=True, iface=None):
return svc
### helper method to easily retrieve tools from ToolSvc by name ---------------
@memoize
@cache
def py_tool(toolName, createIf=True, iface=None):
"""
Helper function to retrieve a tool (owned by the ToolSvc) by name, using
......@@ -193,7 +191,6 @@ def py_tool(toolName, createIf=True, iface=None):
return tool
### helper method to easily retrieve algorithms by name -----------------------
# @c memoize # don't memoize ?
def py_alg(algName, iface='IAlgorithm'):
"""
Helper function to retrieve an IAlgorithm (managed by the IAlgManager_) by
......@@ -238,7 +235,7 @@ def py_alg(algName, iface='IAlgorithm'):
return alg
### pythonizations for StoreGateSvc
@memoize
@cache
def _py_init_StoreGateSvc():
## most probably, user will want to interact with PyRoot objects
## => install the fixes for our user
......@@ -251,7 +248,7 @@ def _py_init_StoreGateSvc():
return StoreGateSvc
### pythonizations for IIncidentSvc
@memoize
@cache
def _py_init_IIncidentSvc():
import cppyy
# IIncidentSvc bindings from dictionary
......@@ -283,7 +280,7 @@ def _py_init_IIncidentSvc():
return IIncidentSvc
### pythonizations for ClassIDSvc
@memoize
@cache
def _py_init_ClassIDSvc():
import cppyy
# IClassIDSvc bindings from dictionary
......@@ -304,7 +301,7 @@ def _py_init_ClassIDSvc():
IClassIDSvc._clidgen = clidGenerator(db=None)
# add pythonized methods
@memoize
@cache
def _clid (self, name):
# handle special cases where CLID has been registered with a typedef
try: name = _clid_typename_aliases[name]
......@@ -316,7 +313,7 @@ def _py_init_ClassIDSvc():
IClassIDSvc.clid = _clid
del _clid
@memoize
@cache
def _typename (self, clid):
# handle special cases of missing clids
try:
......@@ -330,7 +327,7 @@ def _py_init_ClassIDSvc():
return IClassIDSvc
### pythonizations for ITHistSvc
@memoize
@cache
def _py_init_THistSvc():
import cppyy
# ITHistSvc bindings from dictionary
......@@ -588,7 +585,7 @@ del %s""" % (n,n,n,n,n)
return ITHistSvc
### pythonizations for EventStreamInfo
@memoize
@cache
def _py_init_EventStreamInfo():
import cppyy
# EventStreamInfo bindings from dictionary
......@@ -620,7 +617,7 @@ def _py_init_EventStreamInfo():
return ESI
### pythonizations for EventType
@memoize
@cache
def _py_init_EventType():
import cppyy
# EventStreamInfo bindings from dictionary
......@@ -652,27 +649,27 @@ def _py_init_EventType():
return cls
### pythonizations for DataLink
@memoize
@cache
def _py_init_DataLink():
return _gen_data_link
### pythonizations for ElementLink
@memoize
@cache
def _py_init_ElementLink():
return _gen_element_link
### pythonizations for ElementLinkVector
@memoize
@cache
def _py_init_ElementLinkVector():
return _gen_elv
### pythonizations for NavigationToken
@memoize
@cache
def _py_init_NavigationToken():
return _gen_navtok
### helper method to easily instantiate DataLink ------------------------------
@memoize
@cache
def _gen_data_link(klass, storage_policy=None):
"""helper method to easily instantiate a DataLink class.
Sensible default for the storage policy is chosen if none given (it usually
......@@ -691,7 +688,7 @@ def _gen_data_link(klass, storage_policy=None):
return ROOT.DataLink(klass, storage_policy)
### helper method to easily instantiate ElementLink ---------------------------
@memoize
@cache
def _gen_element_link(klass, storage_policy=None, indexing_policy=None):
"""helper method to easily instantiate an ElementLink class.
Sensible defaults for the storage and indexing policies are chosen if none
......@@ -714,7 +711,7 @@ def _gen_element_link(klass, storage_policy=None, indexing_policy=None):
return ROOT.ElementLink(klass)
### helper method to easily instantiate ElementLinkVector ---------------------
@memoize
@cache
def _gen_elv(klass, storage_policy=None, indexing_policy=None):
"""helper method to easily instantiate an ElementLinkVector class.
Sensible defaults for the storage and indexing policies are chosen if none
......@@ -734,7 +731,7 @@ def _gen_elv(klass, storage_policy=None, indexing_policy=None):
return ROOT.ElementLinkVector(klass, storage_policy, indexing_policy)
### helper method to easily instantiate NavigationToken -----------------------
@memoize
@cache
def _gen_navtok(klass, weight_cls=None, hash_cls=None):
"""helper method to easily instantiate a NavigationToken class.
Sensible default for the weight and hash parameters are chosen if none are
......
# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
# Declare the package name:
atlas_subdir( IOVSvc )
......@@ -14,7 +14,7 @@ atlas_add_library( IOVSvcLib
INCLUDE_DIRS ${Boost_INCLUDE_DIRS}
PRIVATE_INCLUDE_DIRS ${ROOT_INCLUDE_DIRS}
LINK_LIBRARIES AthenaBaseComps AthenaKernel GaudiKernel SGTools
PRIVATE_LINK_LIBRARIES ${ROOT_LIBRARIES} PersistentDataModel StoreGateLib xAODEventInfo )
PRIVATE_LINK_LIBRARIES ${ROOT_LIBRARIES} PersistentDataModel StoreGateLib xAODEventInfo RootUtils )
atlas_add_component( IOVSvc
src/components/*.cxx
......
......@@ -21,12 +21,15 @@
#include "AthenaKernel/IIOVSvc.h"
#include "StoreGate/CondHandleKey.h"
#include "AthenaKernel/CondContMaker.h"
#include "AthenaKernel/ITPCnvBase.h"
#include "RootUtils/WithRootErrorHandler.h"
#include "xAODEventInfo/EventInfo.h"
#include "AthenaKernel/BaseInfo.h"
#include "ICondSvcSetupDone.h"
#include "TClass.h"
#include "boost/algorithm/string/predicate.hpp"
namespace
......@@ -89,6 +92,7 @@ CondInputLoader::initialize()
ATH_CHECK( m_clidSvc.retrieve() );
ATH_CHECK( m_rcuSvc.retrieve() );
ATH_CHECK( m_dictLoader.retrieve() );
ATH_CHECK( m_tpCnvSvc.retrieve() );
// Trigger read of IOV database
ServiceHandle<IIOVSvc> ivs("IOVSvc",name());
......@@ -127,7 +131,22 @@ CondInputLoader::initialize()
// Loading root dictionaries in a multithreaded environment
// is unreliable.
// So try to be sure all dictionaries are loaded now.
m_dictLoader->load_type (id.clid());
RootType rt = loadDict (id.clid());
// Special case for LArConditionsSubset classes.
if (rt.Class()) {
size_t nbases = rt.BaseSize();
std::string pat = "LArConditionsContainer<";
for (size_t ibase = 0; ibase < nbases; ++ibase) {
std::string basename = rt.BaseAt(ibase).Name();
if (boost::starts_with (basename, pat)) {
std::string subset = "LArConditionsSubset<" + basename.substr (pat.size(), std::string::npos);
loadDict (subset);
loadDict ("LArConditionsSubset_p1");
}
}
}
break; //quit loop over m_load
} // end if CondInputLoader deals with this folder
}//end loop over m_load
......@@ -162,7 +181,7 @@ CondInputLoader::initialize()
StoreID::storeName(StoreID::CONDITION_STORE));
m_load.value().emplace(vhk.fullKey());
// Again, make sure all needed dictionaries are loaded.
m_dictLoader->load_type (clid2);
m_dictLoader->load_type (clid2, true);
}
}
}
......@@ -372,3 +391,30 @@ CondInputLoader::extraDeps_update_handler( Gaudi::Details::PropertyBase& /*Extra
{
// do nothing
}
//-----------------------------------------------------------------------------
RootType CondInputLoader::loadDict (const std::string& name)
{
// First try to load the persistent class dictionary.
std::unique_ptr<ITPCnvBase> tpcnv = m_tpCnvSvc->t2p_cnv_unique (name);
if (tpcnv) {
RootType rtp = m_dictLoader->load_type (tpcnv->persistentTInfo());
if (rtp.Class()) {
return rtp;
}
}
// Otherwise try to load the dictionary for the class itself.
return m_dictLoader->load_type (name);
}
RootType CondInputLoader::loadDict (CLID clid)
{
std::string name;
if (m_clidSvc->getTypeNameOfID (clid, name).isSuccess()) {
return loadDict (name);
}
return RootType();
}
......@@ -17,6 +17,7 @@
#include "AthenaKernel/IIOVSvc.h"
#include "AthenaKernel/IIOVDbSvc.h"
#include "AthenaKernel/IDictLoaderSvc.h"
#include "AthenaKernel/ITPCnvSvc.h"
#include "StoreGate/StoreGateSvc.h"
#include "AthenaBaseComps/AthAlgorithm.h"
#include "PersistentDataModel/AthenaAttributeList.h"
......@@ -47,6 +48,9 @@ class CondInputLoader
// from AthAlgorithm
void extraDeps_update_handler(Gaudi::Details::PropertyBase&);
RootType loadDict (CLID clid);
RootType loadDict (const std::string& name);
/// Containers
Gaudi::Property<DataObjIDColl> m_load{this,"Load",{},
"List of objects to be loaded","OrderedSet<std::vector<std::string> >"};
......@@ -69,6 +73,8 @@ class CondInputLoader
ServiceHandle<Athena::IRCUSvc> m_rcuSvc;
ServiceHandle<IDictLoaderSvc> m_dictLoader
{ this, "DictLoaderSvc", "AthDictLoaderSvc", "" };
ServiceHandle<ITPCnvSvc> m_tpCnvSvc
{ this, "TPCnvSvc", "AthTPCnvSvc", "" };
std::map<std::string,std::string> m_keyFolderMap;
};
......
# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
# @file: PyPerfMon.py
# @author: Sebastien Binet <binet@cern.ch>
......@@ -9,18 +9,15 @@ __doc__ = """python module holding a python service to monitor athena perfor
"""
import os,sys
from functools import cache
import AthenaCommon.Logging as L
_perfMonStates = ('ini','evt','fin')
from PerfMonComps.PyMonUtils import Units, pymon
from PyUtils.Decorators import forking
from PyUtils.Decorators import memoize, forking
import six
_perfMonStates = ('ini','evt','fin')
@memoize
@cache
def _import_ROOT():
# FIXME: work-around ROOT's silly behaviour wrt graphics libraries
# see: https://savannah.cern.ch/bugs/?35461
......@@ -430,7 +427,7 @@ class Svc(object):
## write out meta-data
import PyUtils.dbsqlite as dbs
meta = dbs.open(headerFile, 'n')
for k,v in six.iteritems (self.meta):
for k,v in self.meta.items():
meta[k] = v
meta['version_id'] = '0.4.0' # stream-format + header file
meta['pmon_tuple_files'] = map( os.path.basename, outFiles[1:] )
......