We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Cross-Platform Parallel Regression and Performance Testing of, and with OpenZFS, FreeBSD and bhyve

00:00

Formal Metadata

Title
Cross-Platform Parallel Regression and Performance Testing of, and with OpenZFS, FreeBSD and bhyve
Alternative Title
Parallel, Multi-Axis Regrression and Performance Testing with FreeBSD, OpenZFS and bhyve
Title of Series
Number of Parts
34
Author
License
CC Attribution 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
"No OS left behind" would be an excellent mantra in the Open Source community but the reality is that there are "Tier 1" and "Tier >1" operating systems, file systems and other components throughout the Open Source ecosystem. The OpenZFS file system provides and excellent example and opportunity of a fundamental computing component that enjoys every positive aspect of Open Source, but is relegated to "non-tier-1" status on platforms that are not explicitly essential to commercial endeavors. These "not-yet-essential" platforms include NetBSD and Windows, not to mention non-Intel architectures such as ARM, PowerPC, and FreeBSD/Sparc64. This talk will explore exactly how a POSIX Unix environment and specific utilities can provide a common testing environment for OpenZFS on all supported OpenZFS platforms, including Microsoft Windows. This "parallel" testing approach dictates that all targeted platforms are tested simultaneously on identical hardware for instantaneous comparative results. Two additional dimensions arise from this approach: The testing of FreeBSD across multiple versions as far back as 5.0 and even older, plus the testing of non-OpenZFS code on each supported OpenZFS platform. FreeBSD was chosen as the laboratory host operating system for its unique ability to institutionally provide "Jail" container support for previous versions of FreeBSD, and bhyve hypervisor support for not only FreeBSD releases but non-FreeBSD operating systems. Implementation details include the use of Jail and bhyve for system containment and virtualization, and OpenSSH, Cygwin, and the "rtools" (net/bsdrcmds) utilities for remote system control. Unexpected dependencies include a global effort to rebuild FreeBSD's release history, parallel efforts to implement BSD-licensed S.M.A.R.T., Git and rsync utilities; cross-platform data generation tools, and a continuous validation of "guest" operating systems on the bhyve hypervisor. Urgency factors include the transition of non-Illumos/non-Linux OpenZFS platforms from Illumos to "ZFS on Linux" as their upstream source of truth, warranting expanded testing of parallel code bases of formerly-singular OpenZFS ports. Motivations for this talk include encounters with countless operating system and file system regressions in a commercial support environment, with a particular focus on performance "cliffs" over which acceptable performance travels to an unfortunate collision with lower, unacceptable levels.
Statistical hypothesis testingParallel portMultiplicationCartesian coordinate systemLinear regressionCompilerRevision controlThread (computing)Computer architectureArchitectureMultitier architectureComputing platformPlanningModul <Datentyp>Fundamental theorem of algebraMetric systemWhiteboardPowerPCReduced instruction set computingComputer fileEndliche ModelltheorieVideo gameExecution unitComputing platformProcess (computing)Virtual machineWater vaporComputing platformPlanningOpen setMultiplication signMereologyRow (database)Insertion lossFile systemTrailCompilation albumComputer architectureCartesian coordinate systemDigital photographyAuthorization1 (number)ArmOpen sourceCollisionCASE <Informatik>Group actionMessage passingComputer configurationFamilyCycle (graph theory)Network topologySoftwareNumberInternet service providerIntelCondition numberServer (computing)Arithmetic progressionOffice suiteAreaSoftware developerStandard deviationSelf-organizationError messagePhysical systemLevel (video gaming)Mechanism designTable (information)Block (periodic table)Touch typingBitZoom lensEvent horizonMultitier architectureRevision controlCompilerThread (computing)Latent heatSoftware bugRaw image formatVirtualizationFrequencyPerfect groupRule of inferenceModul <Datentyp>Source codeStatistical hypothesis testingCodePowerPCCore dumpComputerWhiteboardOperating systemLinear regressionData storage deviceLengthHorizonComputer hardwareDrop (liquid)WorkloadStatistical hypothesis testingComputer animationXML
WhiteboardPowerPCReduced instruction set computingComputer architectureCartesian coordinate systemArmBuildingComputer hardwareRandom numberIntegrated development environmentStatistical hypothesis testingEntropie <Informationstheorie>Open sourceCache (computing)Personal digital assistantComputing platformLatent heatStress (mechanics)Default (computer science)2 (number)Figurate numberNumberComputer hardwareVirtual machineDecision theoryVideo gameEndliche ModelltheorieMoment of inertiaPerspective (visual)Theory1 (number)ConsistencyView (database)Insertion lossSource codeComputing platformGoodness of fitMoment (mathematics)System callData storage deviceDifferent (Kate Ryan album)Operator (mathematics)Physical lawBridging (networking)Digital photographyLattice (order)Process (computing)Inheritance (object-oriented programming)Electric generatorCoefficient of determinationRoutingCellular automatonRow (database)CircleShared memoryMultiplication signOpen setReading (process)Pole (complex analysis)Data structureResultantSocial classStatistical hypothesis testingWindowRandomizationMetropolitan area networkCartesian coordinate systemGrass (card game)Dependent and independent variablesInformation retrievalComputer fileOvalIdentity managementPortable communications deviceQuicksortField (computer science)Proper mapAlgorithmInstallation artBefehlsprozessorPoint (geometry)Slide ruleSoftware bugBootingGeneric programmingVideoconferencing10 (number)PCI ExpressTouch typingRandom number generationOperations support systemPowerPCEntropie <Informationstheorie>Semiconductor memoryPower (physics)Stability theoryFile systemData conversionPredictabilityLevel (video gaming)BenchmarkOpen sourceOperating systemIntegrated development environmentSerial portWhiteboardBuildingComputer animation
WorkloadConsistencyComputer hardwarePhysical systemTheoryCartesian coordinate systemComputer hardwareComputer fileConsistencyWritingMultiplication signVirtual machineWorkload1 (number)Identity managementNoise (electronics)Open setSelf-organizationView (database)CASE <Informatik>Revision controlComputer animation
Cartesian coordinate systemDisk read-and-write headServer (computing)Virtual realityRevision controlMiniDiscBlock (periodic table)NumberSerial portControl flowAsynchronous Transfer ModeWeb pageDirected setSCSIAxiom of choiceIntegrated development environmentNetwork topologyPatch (Unix)TouchscreenText editorComputer fileUser profileFirewall (computing)Computer networkOpen setNumberCalculus of variationsDecision theoryMaxima and minimaReal numberVideoconferencing1 (number)Workstation <Musikinstrument>Open setPowerPCInstallation artOverlay-NetzBitExecution unitWindowProcess (computing)Data storage deviceService (economics)Mixed realityInterpreter (computing)Revision controlIdentity managementRead-only memorySelectivity (electronic)QuicksortAxiom of choiceStructural loadGastropod shellMultiplication signUtility softwareData managementMiniDiscMathematicsDigital photographyDirectory serviceComputer hardwareVirtual machineFreewareTask (computing)Equivalence relationArithmetic progressionSoftware developerRepresentation (politics)Wind tunnelComputing platformOpen sourceOperations support systemOffice suiteComputer configurationLink (knot theory)StapeldateiAsynchronous Transfer ModeComputing platformMoment (mathematics)Right angleIntegrated development environmentData structurePhysical systemSpecial unitary groupPoint (geometry)Game controllerPlastikkarteComputer-generated imageryGraphical user interfaceWeb pageBinary codeEvent horizonMetropolitan area networkFerry CorstenCore dumpPhysical lawOrder (biology)Power (physics)EmailCASE <Informatik>TouchscreenGroup actionFamilyRow (database)Electric generatorMereologyOvalProfil (magazine)Term (mathematics)Ramsey theoryCycle (graph theory)Labour Party (Malta)Surface of revolutionMeasurementSoftware bugAreaState of matterInterior (topology)Musical ensembleDemosceneParameter (computer programming)Bit rateAnalytic continuationLevel (video gaming)CircleWordTheoryError messageInsertion lossDistribution (mathematics)Shared memoryArmComputer fileEndliche ModelltheorieComputer animation
Error messageInformationComputer fileCore dumpCartesian coordinate systemInstallation artLocal ringEmpennageProduct (business)Key (cryptography)FirmwareTable (information)Distribution (mathematics)Computer hardwareIntegrated development environmentObject (grammar)Crash (computing)Software developerSoftwareMultiplication signWindowWeb pageMixed realityNetwork topologyLevel (video gaming)Utility softwareCASE <Informatik>Maxima and minimaServer (computing)MereologyExecution unitNumberSoftware bugResultantData storage deviceWordQuicksortParameter (computer programming)ArmSpecial unitary groupSurjective functionCuboidTape driveGastropod shellDebuggerGoodness of fitKey (cryptography)WikiVirtual machineMatrix (mathematics)Spezielle orthogonale GruppeProduct (business)VideoconferencingAddress spaceComputer hardwareComputing platformComputer animation
Cartesian coordinate systemConsistencyRevision controlCompilerPearson product-moment correlation coefficientExplosionComputer configurationComputing platformPortable communications deviceLimit (category theory)Different (Kate Ryan album)EmailBootingStack (abstract data type)2 (number)Decision theoryForm (programming)Student's t-testStatistical hypothesis testingPersonal digital assistantOperating systemUtility softwareRevision controlComputerTouch typingComputer configurationSoftwareRight angleTrailChainStrategy gameOcean currentSoftware bugFraction (mathematics)NumberCountingArchaeological field surveyScaling (geometry)WordSuite (music)Computer fileBridging (networking)Virtual machineElectronic mailing listProjective planeElectric generatorData conversionMatching (graph theory)Type theoryMulti-core processorLine (geometry)Connectivity (graph theory)Clique-widthOnline helpFlagDirectory service1 (number)GradientValidity (statistics)MiniDiscRippingClient (computing)Single-precision floating-point formatSpreadsheetMultiplication signPatch (Unix)Block (periodic table)ConsistencyWindowError messagePlastikkarteBefehlsprozessorContent delivery networkEvent horizonDerivation (linguistics)Core dumpData storage deviceFile Transfer ProtocolComputer programmingDirection (geometry)QuarkAsynchronous Transfer ModeTerm (mathematics)PlanningShift operatorMaxima and minimaAssembly languageMixed realityMultiplicationCartesian coordinate systemFreewarePrototypeSoftware frameworkNetwork topologyMoving averageCASE <Informatik>Sinc functionContinuous integrationGoodness of fitModul <Datentyp>Unit testingWeb applicationHard disk driveCodeLinear regressionTraffic reportingFunctional (mathematics)PowerPCPortable communications deviceResultantServer (computing)Computer hardwareBitComputer iconPhysical systemOpen setParallel portComputer architectureArmIdentity managementStatistical hypothesis testingGene clusterFile systemProper mapComputing platformThread (computing)Software developerStructural loadFocus (optics)Analytic continuationComputing platformInterrupt <Informatik>EmulatorGame controllerFile archiverOperator (mathematics)Scripting languageSerial portData managementMetropolitan area networkSurfaceData structureProcess (computing)Information retrievalOperational amplifierUsabilityBuildingSocial classExtension (kinesiology)Formal grammarPhysical lawMountain passOctahedronPower (physics)Self-organizationVotingMereologyClosed setMarginal distributionGraph coloringGame theoryNatural numberFirst-person shooterForcing (mathematics)Endliche ModelltheorieView (database)Figurate numberComputer virusExecution unitFamilyHypermediaGroup actionPattern languageRow (database)Coefficient of determinationFile viewerBit rateNP-hardControl flowAreaTotal S.A.Universe (mathematics)Rule of inferenceComputer clusterBlogInsertion lossInheritance (object-oriented programming)Service-oriented architectureAuthorizationFood energySound effectForceMacro (computer science)Extreme programmingWorkloadSpecial unitary groupStatement (computer science)Scheduling (computing)TunisCircleVirtualizationDisk read-and-write headCellular automatonComputer-generated imageryKey (cryptography)CodeProduct (business)Open sourceLink (knot theory)Computer animation
Transcript: English(auto-generated)