consortium 2010 - seismic laboratory for imaging and ... · ๏seismic applications are: ... java...

20
SLIM University of British Columbia Consortium 2010 Henryk Modzelewski Software releases and architecture Thursday, December 9, 2010

Upload: hanhan

Post on 30-May-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIMUniversityofBritishColumbia

Consortium2010

HenrykModzelewski

Software releases and architecture

Thursday, December 9, 2010

Page 2: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

• Challenges

• Developmentenvironment

• Knowledgetransfer

• Pastsoftwarereleases

• Nextsoftwarerelease

• Conclusions

Outline

Thursday, December 9, 2010

Page 3: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

๏ Seismicapplicationsare:• memorydemanding• computationallyintensive• IOintensive• weuselarge‐scale‐optimizationiterativealgorithms

๏ SLIM’stechnologyisdrivenbymulti‐d(d>2)non‐separabletransforms

๏Academicenvironmentcallsfor• codereuse&reproducibility• fastlearningcurves

Challenges

Thursday, December 9, 2010

Page 4: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

๏ In‐corecomputations:• MatlabandJava• C/C++/FORTRANforlow‐levelimplementations

๏Seismictoolsfordatainput/output:• SeismicUnix,Delphi,SegyMAT,Madagascar (RSF)

๏Scriptingtools:• Unixshells,SCons,Python

๏Parallelism• MATLABandJava(forparallelIO)

Programming tools

Thursday, December 9, 2010

Page 5: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

๏Desktops(forsmall‐problemprototyping)๏Cluster(forparalleldevelopmentandcomputations• 288CPUcores(Intel2.66GHz)• 16TBofdiskspace• Funding:‐ contributiontoinitialpurchase(2006)‐ departmentalefforttoupgrade(2009)

Hardware

Thursday, December 9, 2010

Page 6: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

๏StudentstypicallyhavealreadyexperiencewithMATLABprogramming

๏MATLABintroducedthecapabilitiesthatallowmoreefficientalgorithmdevelopment:• supportforparallelcomputations• supportfordistributedarrays/vectors• MATLABinterfaceswithotherlow‐levellanguages

๏Ourgoalistoisolatestudents,asmuchaspossible,fromlow‐levelprograming

Development in MATLAB

Thursday, December 9, 2010

Page 7: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

๏MATLABaddressesourmajorchallenges:• massiveparallelcomputations• capabilitytohandlelargememoryfootprint• fasterlearningcurve(lesssoftwaretolearn)

๏UnfortunatelyMATLABisnotfree๏ButthereisvastamountofscientificsoftwaredevelopedinMATLAB

Development in MATLAB

Thursday, December 9, 2010

Page 8: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

๏ Thereisstillneedtobuiltorutilizeefficientlow‐levelroutinesandinterfacethemwithMATLAB,like:• 3Dparallelcurvelettransform

๏ SomeoftheexistingMATLABcodeisbeingconvertedorextendedtoallowparallelcomputations,like:• SPOT• SPGL1

๏ Thereisstillneedtoimplementutilitiesforout‐of‐coreprocessinganddatainput/output

Development in MATLAB

Thursday, December 9, 2010

Page 9: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

๏ Currentsoftwareprojects:

• SPOTextensionsforparallelprocessingusingpSPOT

• pSPOT:parallelextensionstoSPOT

• botharesubjectsofthenextpresentations

Development in MATLAB

Thursday, December 9, 2010

Page 10: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

๏ Futureprojects:

• furtherdevelopmentofpSPOT

• improvementstointerfacingout‐of‐coredata

‐ investigatingJavaSeis(www.javaseis.org)

‐ improvementstoRSF‐MATLABinterface

• MATLABimplementationofparallel3Dcurvelets

• nSPOT:non‐linearextensionstoSPOT

Development in MATLAB

Thursday, December 9, 2010

Page 11: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

๏Weintendtomaintain4positionstoaccommodate• part‐timeseniorprogrammer• 2full‐timejuniorprogrammers• part‐timesystemadministrator

๏FocusonsupportingMATLABdevelopment

Programming staff (future)

Thursday, December 9, 2010

Page 12: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

• Publications• Softwarereleases‐ algorithms‐ applications’demos

• Webinars(monthly/bi‐monthly)‐ presentations‐ softwaredemonstrations‐ softwaretutorials

Knowledge transfer

Thursday, December 9, 2010

Page 13: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

๏SoftwareHighlights:• https://wave.eos.ubc.ca/Software/SINBAD/highlights/

๏SoftwareReleases:• https://wave.eos.ubc.ca/Software/SINBAD/

๏Accessibleonlytoconsortiummembers• ([email protected])

Past software releases

Thursday, December 9, 2010

Page 14: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

• 1releasein2006• 2releasesin2007• 1releasein2008• 1releasein2010

Past software releasesWhen:

Thursday, December 9, 2010

Page 15: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

• Wavefieldreconstruction• Wavefieldseparation• Modelling• Imaging• Solvers(ISTc,SPGL1)• Transforms(Curevelets,Surfacelets,...)

• seeWebPagesformoredetails

Past software releases:Categories:

Thursday, December 9, 2010

Page 16: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

• Weplanthenextreleaseinearly2011• Weintendtounifythesoftwarereleaseasmuchaspossibleto:‐ clearlyseparatealgorithmsformapplications‐ packagetogetherasmanyexternalsoftwarepackagesaspossible

‐ includeautomaticdependencies/unittests‐ streamlineinstallationandimplementationofoursoftwareinthecompanies

Next software release

Thursday, December 9, 2010

Page 17: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

• Weplanthenextreleaseinearly2011• Thesoftwarereleasewillcontainthefollowingapplications:‐ L1migrationwithactivecontributionfromsurface‐relatedmultiples

‐ CompressSensingofFull‐waveforminversiongradients‐ CurveletMatchedEstimationofPrimariesviaSparseInversion

‐ Estimationofsurface‐relatedprimarieswithL1inversionandinformedblinddeconvolutiontechniques(update)

‐ ...

Next software release

Thursday, December 9, 2010

Page 18: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

๏Wehave:• builtalargesoftwareframeworkforseismic‐imagingapplications.

• implementednewalgorithmsinthisframework.• buildanumberoflow‐leveltoolstosupportthosealgorithms.

• successfullystartedeffortstointroduceMATLABasourmainresearchanddevelopmentenvironment.

Conclusions

Thursday, December 9, 2010

Page 19: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

SLIM

๏Wemadeahugeeffortinstreamlining/acceleratingalgorithmdevelopmentandtryingtoallowresearcherstofocusonresearchratherthansoftwaredevelopment,andwewishtopursuethisgoal.

๏MATLABoffersanefficientalternativesodowearecompelledtoexploititandusetoourbenefit.

Conclusions

Thursday, December 9, 2010

Page 20: Consortium 2010 - Seismic Laboratory for Imaging and ... · ๏Seismic applications are: ... Java • C/C++/FORTRAN ... L1 migration with active contribution from surface ‐

Acknowledgements

ThisworkwasinpartfinanciallysupportedbytheNaturalSciencesandEngineeringResearchCouncilofCanadaDiscoveryGrant(22R81254)andtheCollaborativeResearchandDevelopmentGrantDNOISEII(375142‐08).ThisresearchwascarriedoutaspartoftheSINBADIIprojectwithsupportfromthefollowingorganizations:BGGroup,BP,Chevron,ConocoPhillips,Petrobras,TotalSA,andWesternGeco.

SLIM

Thursday, December 9, 2010