Spelling suggestions: "subject:"nolltolerans""
1 |
Multipla definitioner av procedurer – feltolerans genom redundans på procedurnivå i ett programspråkIvinger, Oskar January 2003 (has links)
Sammanfattning Fel i programvara (buggar) kostar ofantliga summor varje år. I detta arbete presenteras en metod där programexekveringsmiljön utan vare sig programmerarens eller användarens inblandning utförligt kan rapportera och dölja effekterna av en avsevärd andel buggar. Genom att kompilatorn eller tolken tillåter att en och samma procedur implementeras hur många gånger som helst införs ett helt automatiskt stöd för N-Version Programming (NVP) omedelbart i programspråket. Tekniken gör programvaran feltolerant och blir ett komplement till kostsam och ofta bristfällig testning. En tolk utvecklades för ett programspråk som tillåter multipla definitioner av procedurer. Därmed har det inbyggt stöd för feltolerans genom redundans på procedurnivå. Ett experiment genomfördes där nio programmerare oberoende av varandra implementerade 12 utförligt specificerade procedurer. De olika bidragen klistrades in i ett och samma program. Nio av 12 feltoleranta sammansatta procedurer fungerade perfekt. I många fall även när en majoritet av de ingående bidragen drogs med allvarliga fel. Sammanställningen genomfördes både före och efter programmerarnas egen testning och felrättning. Testningen visade sig vara en faktor med liten inverkan på helheten även om många enskilda uppdaterade bidrag fungerade avsevärt bättre än förut. I något fall lyckades metoden påvisa tvetydigheter i specifikationen när olika versioner producerade olika men formellt korrekta resultat. / Södra Stenbocksgatan 120 252 44 HELSINGBORG 042 14 67 06
|
2 |
Highly Available Task Scheduling in Distinctly Branched Directed Acyclic Graphs / Högt tillgänglig schemaläggning av uppgifter i distinkt grenade riktade acykliska graferZhong, Patrik January 2023 (has links)
Big data processing frameworks utilizing distributed frameworks to parallelize the computing of datasets have become a staple part of the data engineering and data science pipelines. One of the more known frameworks is Dask, a widely utilized distributed framework used for parallelizing data processing jobs. In Dask, the main component that traverses and plans out the execution of the job is the scheduler. Dask utilizes a centralized scheduling approach, having a single server node as the scheduler. With no failover mechanism implemented for the scheduler, the work in progress is potentially lost if the scheduler fails. As a consequence, jobs that might have been executed for hours or longer need to be restarted. In this thesis, a highly available scheduler is designed, based on Dask. We introduce a highly-available scheduler that replicates the state of the job on a distributed key-value store. The replicated schedulers allow us to design an architecture where the schedulers are able to take over the job in case of a scheduler failure. To reduce the performance overhead of replication, we further explore optimizations based on partitioning typical task graphs and sending each partition to its own scheduler. The results show that the replicated scheduler is able to tolerate server failures and is able to complete the job without restarting but at a cost of reduced throughput due to the replication. This is mitigated by our partitioning, which achieves almost linear performance gains relative to our baseline fault-tolerant scheduler, through the utilization of a parallelized scheduling architecture. / Dataprocesseringsramverk av stora datamängder har blivit en viktig del inom Data Engineering och Data Science pipelines. Ett av de mer kända ramverken är Dask som används för att parallelisera jobb inom data processering. En av huvudkomponenterna i Dask är dess schemaläggare som traverserar och planerar exekveringen av av arbete. Dask använder en centraliserad schemaläggning, med en enda server nod som schemaläggare. Utan en implementerad felhanteringsmekanism innebär det att allt arbete är förlorat ifall schemaläggaren kraschar. I denna uppsats så skapar vi en schemaläggare baserad på Dask. Vi introducerar hög tillgänglighet till schemaläggaren genom att replikera statusen av ett jobb till en distribuerad Key-Value store. För att reducera kostnaden av replikationen så utforskas optimeringar genom att partitionera typiska uppgifts-grafer för att sedan skicka dem till varsin schemaläggare. Resultaten visar att en replikerad schemaläggare tolererar att schemaläggningsservarna kraschar, och att den kan slutföra ett jobb utan att behöva starta om, på en kostnad av reducerad schemaläggningseffektivitet på grund av replikationen. Denna reduktion av effektivitet mitigeras av vår partitioningsstrategi, som genom att använda en paralliserad schemaläggningsarkitektur, uppnår nästan linjära prestandaökningar jämfört med den simpla feltoleranta schemaläggaren.
|
3 |
A Study on Fault Tolerance of Image Sensor-based Object Detection in Indoor Navigation / En studie om feltolerans för bildsensorbaserad objektdetektering i inomhusnavigeringWang, Yang January 2022 (has links)
With the fast development of embedded deep-learning computing systems, applications powered by deep learning are moving from the cloud to the edge. When deploying NN onto the devices under complex environments, there are various types of possible faults: soft errors caused by cosmic radiation and radioactive impurities, voltage instability, aging, temperature variations, etc. Thus, more attention is drawn on the reliability of the NN embedded system. In this project, we build a virtual simulation system in Gazebo to simulate and test the working of an embedded NN system in the virtual environment in indoor navigation. The system can detect objects in the virtual environment with the help of the virtual camera(the image sensor) and the object detection module, which is based on YOLO v3, and make corresponding control decisions. We also designed and simulated the corresponding error injection module according to the working principle of the image sensor, and tested the functionality, and fault tolerance of the YOLO network. At the same time, network pruning algorithm is also introduced to study the relationship between different degrees of network pruning and network fault tolerance to sensor faults. / Med den snabba utvecklingen av inbyggda datorsystem för djupinlärning flyttas applikationer som drivs av djupinlärning från molnet till kanten. När man distribuerar NN på enheterna under komplexa miljöer finns det olika typer av möjliga fel: mjuka fel orsakade av kosmisk strålning och radioaktiva föroreningar, spänningsinstabilitet, åldrande, temperaturvariationer, illvilliga angripare, etc. Därför är mer uppmärksamhet ritade om tillförlitligheten hos det inbyggda NN-systemet. I det här projektet bygger vi ett virtuellt simuleringssystem för att simulera och testa hur ett inbäddat NN-system fungerar i den virtuella miljö vi ställer upp. Systemet kan upptäcka objekt i den virtuella miljön enligt den virtuella kameran och objektdetekteringsmodulen, som är baserad på YOLO v3, och göra motsvarande kontrollstrategier. Vi designade och simulerade också motsvarande felinsprutningsmodul enligt bildsensorns arbetsprincip och testade funktionalitet, tillförlitlighet och feltolerans hos YOLO-nätverket. Samtidigt nätverk beskärningsalgoritm introduceras också för att studera sambandet mellan olika grader av nätverksbeskärning och nätverksfeltolerans.
|
4 |
A Study on Fault-tolerance of Deep Neural Networks for Embedded SystemsMalekzadeh, Elaheh January 2021 (has links)
Deep learning is replacing many traditional data processing methods in computer vision, speech recognition, natural language processing and many more diverse end applications. Until only a few years ago, using deep learning networks for inference required large amount of computational resources such as memory, processing power and energy. It was not trivial to deploy the computationally-expensive deep neural networks on embedded devices with limited capabilities. In recent years however, deep learning is finding its way through the world of embedded devices. Embedded systems such as Internet of Things (IoT) devices, phones and even components in cars are being equipped with deep neural networks. This raises interesting challenges for both embedded designers and deep learning scientists to close the gap between these two domains. In this thesis work, some challenges involved in deploying deep learning for embedded systems were discussed, as well as some of the available solutions and frameworks. Moreover, focusing on the safety and fault-tolerance aspects of embedded systems, tolerance of deep neural networks against faults was investigated using an experiment-based research strategy. A fault injection framework was designed and implemented that targeted deep neural networks defined using PyTorch. The framework developed was used to perform fault injection experiments on a small deep learning network. It was found how faults have various impacts on the accuracy of the neural network depending on the type of layer targeted by the faults. Worst-case faults were identified and several architectural modifications on the deep neural network were examined to improve the fault tolerance of the neural network under study. / Djupinlärning ersätter många traditionella databehandlingsmetoder inom datorseende, röstigenkänning, språkteknologi och flera olika slutanvändningar. Fram tills några år sedan har användningen av djupinlärningsnätverk för inferens krävt stora mängder beräkningsresurser såsom minne, processorkraft och energi. Det är inte trivialt att distribuera det beräknings-dyra djupa neurala nätverket på inbyggda enheter med begränsad kapacitet. Under de senaste åren har dock djupinlärning nått världens inbyggda enheter. Inbyggda system som Internet of Things (IoT) -enheter, telefoner och till och med komponenter i bilar utrustas med djupa neurala nätverk. Detta medför intressanta utmaningar för både designers av inbyggda system och djupinlärningsforskare att minska klyftan mellan dessa två domäner. I detta examensarbete diskuteras några av utmaningarna med att distribuera djupinlärning för inbyggda system, samt tillgängliga lösningar och ramverk. Djupa neurala nätverks feltolerans undersöks. Ett ramverk för felinjicering skapades som riktade sig mot djupa neurala nätverk som använder sig av Pytorch. Ramverket användes sedan för att utföra felinjektionsexperiment på ett mindre djupinlärningsnätverk. Man kunde se hur felinjiceringar påverkade nätverkets noggrannhet på olika sätt beroende på vilket lager av nätverket felinjiceringen gjordes på. Den värsta sortens felinjicering identifierades och olika arkitektoniska modifieringar av det djupa neurala nätverket undersöktes för att förbättra feltoleransen av nätverket.
|
5 |
Drone Flight Controller Reliability Analysis within EU Standardization / Analys av pålitlighet för drönarflygkontroller inom EU-standardiseringWei-Heng, Ke January 2023 (has links)
As the drone market expands, the corresponding standardization follows. Drone standardization can vary geographically based on the regulations and requirements of different areas. This study mainly focuses on the European Union Aviation Safety Agency (EASA) regulations and investigates Aerit’s role, as a drone operator in Sweden, within this standardization framework. In particular, Specific Operations and Risk Assessment (SORA) process, developed by EASA, is illustrated. The process covers a comprehensive range of factors related to drone operations to assess and manage risks. In addition to the drone design standardization process, the study looks into drone flight control systems at component-level redundancy and at system-level redundancy with a scientific grounding of dependability. An investigation of what a voting system looks like is then conducted for implementing a redundant flight control architecture. Furthermore, results from Software-In-The-Loop (SITL) implementation in this study show that the performance differs not much for the two flight control architectures (component-level and system-level). Thus, the decision of whether to use one flight controller or redundant flight controllers depends on the specific requirements and priorities of the drone application as well as the level of pre-flight testing. / Eftersom drönarmarknaden växer, följer motsvarande standardisering med. Standardisering av drönar kan variera geografiskt baserat på olika områdens lagar och krav. Denna studie fokuserar främst på Europeiska unionens byrå för luftfartssäkerhet (EASA) och undersöker Aerits roll som drönaroperatör i Sverige inom detta standardiseringsramverk. Särskilt beskrivs processen för Specifika Operationer och Riskbedömning (SORA), utvecklad av EASA. Denna process täcker ett omfattande utbud av faktorer relaterade till drönaroperationer för att bedöma och hantera risker. Utöver standardiseringsprocessen för drönardesign, granskar studien drönarflygkontrollsystem på komponentnivå för redundans och på systemnivå med en vetenskaplig grund för tillförlitlighet. En undersökning av hur ett röstningssystem ser ut genomförs sedan för att implementera en redundant flygkontrollarkitektur. Vidare visar resultaten från mjukvara-i-slingan (SITL) -implementeringen i denna studie att prestandan inte skiljer sig mycket mellan de två flygkontrollarkitekturerna (komponentnivå och systemnivå). Därför beror beslutet om att använda en flygkontroll eller redundanta flygkontroller på de specifika kraven och prioriteterna för drönapplikationen samt nivån av före-flygtestning.
|
6 |
Repetitiv spegling av I/O över TCP/IP : Med fokus på feltolerans, signalintegritet och tillförlitlighetWernhager, Stefan January 2020 (has links)
Avläsning av tillståndet hos en mikrobrytare kräver att den ansluts till ett I/O hos exempelvis PLC, mikrokontroller eller annan lämplig utrustning. Forsmarks Kraft-grupp AB (FKA) och avdelningen för larm och telekommunikation (NEIT) ser ett behov av att på kärnkraftsanläggningen i Forsmark installera mikrobrytare på platser där det saknas anslutningsutrustning och förmedla dess tillstånd till ett övervakande system. I denna rapport presenteras ett förslag till teknisk lösning som uppfyller FKA:s behov genom att spegla ett I/O över TCP/IP-protokoll. Lösningen har tagits fram utifrån specifika önskemål från FKA. Funktionen ska bland annat övervaka två områden med mikrobrytare, larma för fel, ha egenövervakning, ta hänsyn till signalintegritet samt baseras på generell mikrokontrollutrustning. Vi-dare har en utvärdering av tillförlitligheten gjorts samt att funktionen har testats. Resultatet presenteras som en prototyputrustning där två mikrokontrollplattformar från Arduino har använts som bas och designen har skett utifrån ett feltolerant per-spektiv. Trippelmodulär redundans, watchdog-timer, dubbelbalanserad slinga och majoritetsvotering är några av de tekniker som tillämpats. Genom en kombination av programmering och föreslagna metoder har FKA:s önskemål uppnåtts. Tillförlitlighetsutvärderingarna visar att prototyputrustningen har en mean time between failure på ungefär 3,2 år samt att sannolikheten för felfri drift i 20,000 tim-mar är ungefär 50 %. Funktionstesterna visar på goda förutsättningar för långsiktig funktionalitet gällande I/O-spegling och larmhantering. Testerna avslöjar även före-komsten av falska larm vilket har föranlett förslag om debuggning av mjukvaran in-nan driftsättning. Rapporten avslutas med en diskussion kring de uppnådda resulta-ten samt föreslagna kompletteringar och utvecklingar av prototyputrustningen. / Reading the state of a microswitch requires it to be connected to an I/O of, for ex-ample, PLC, microcontroller, or other suitable equipment. Forsmarks Kraftgrupp AB (FKA) and the department of alarms and telecommunications (NEIT) have real-ized a need to install microswitches at Forsmarks nuclear power plant at places where there are no connection equipment and redistribute its state to a monitoring system. This report presents a proposal for a technical solution that meets FKA:s needs by mirroring an I/O over TCP/IP-protocol. The solution has been developed based on specific requirements from FKA. The function should, among other things, monitor two areas with microswitches, alarm for faults, have self-monitoring, consider signal integrity, and be based on general microcontroller equipment. Furthermore, an analysis of the reliability has been made and the function has been tested. The result is presented as a prototype equipment where two microcontroller plat-forms from Arduino have been used as a base and the design has been done from a fault tolerant perspective. Triple modular redundancy, watchdog timer, double-bal-anced loop and majority voting are some of the techniques used. Through a combi-nation of programming and proposed methods, FKA:s wishes have been achieved. The reliability assessments show that the prototype equipment has a mean time be-tween failure of about 3.2 years and that the probability of faultless operation for 20,000 hours is about 50 %. The function tests show good conditions for long-term functionality regarding I/O mirroring and alarm handling. The tests also reveal the presence of false alarms, which has prompted proposals for debugging the software before deployment. The report concludes with a discussion of the results achieved as well as proposed additions and developments of the prototype equipment.
|
7 |
Distributed Robust LearningYerrapragada, Akhil January 2021 (has links)
Accuracy obtained when training deep learning models with large amounts of data is high, however, training a model with such huge amounts of data on a single node is not feasible due to various reasons. For example, it might not be possible to fit the entire data set in the memory of a single node, training times can significantly increase since the dataset is huge. To avoid these problems decentralized training is devised. In decentralized training, using the technique of Data parallelism, multiple nodes/workers make a local copy of the model and train it using a partition of the dataset. Each of these locally trained models are aggregated at some point to obtain the final trained model. Architectures such as Parameter server, All-reduce and Gossip use their own network topology to implement decentralized training. However, there is a vulnerability in this decentralized setting, any of the worker nodes may behave arbitrarily and fail. This type of failure is called byzantine failure. Here, arbitrary means any of the worker nodes may send incorrect parameters to others, which may lead to inaccuracy of the global model or failure of the entire system sometimes. To tolerate such arbitrary failures, aggregation rules were devised and are tested using Parameter server architecture. In this thesis we analyse the fault tolerance of Ring all-reduce architecture to byzantine gradients using various aggregation rules such as Krum, Brute and Bulyan. We will also inject adversaries during the model training to observe, which of the aforementioned aggregation rules provide better resilience to byzantine gradients. / Noggrannheten som erhålls vid träning av djupinlärningsmodeller med stora datamängder är hög, men det är inte möjligt att utbilda en modell med så stora mängder data på en enda nod av olika skäl. Det kan till exempel inte vara möjligt att passa hela datamängden i minnet på en enda nod, träningstiderna kan öka avsevärt eftersom datamängden är enorm. För att undvika dessa problem utformas decentraliserad träning. I decentraliserad utbildning, med hjälp av tekniken för dataparallellism, gör flera noder / arbetare en lokal kopia av modellen och tränar den med hjälp av en partition av datamängden. Var och en av dessa lokalt utbildade modeller samlas vid någon tidpunkt för att få den slutliga utbildade modellen. Arkitekturer som Parameterserver, All- reduce och Gossip använder sin egen nätverkstopologi för att implementera decentraliserad utbildning. Det finns dock en sårbarhet i denna decentraliserade inställning, någon av arbetarnoderna kan uppträda godtyckligt och misslyckas. Denna typ av fel kallas bysantinskt fel. Här betyder godtyckligt att någon av arbetarnoderna kan skicka felaktiga parametrar till andra, vilket ibland kan leda till felaktighet i den globala modellen eller att hela systemet misslyckas. För att tolerera sådana godtyckliga fel utformades aggregeringsregler som testas med hjälp av parametern serverarkitektur. I den här avhandlingen analyserar vi feltoleransen för Ring allreduceringsarkitektur till bysantinska gradienter med hjälp av olika aggregeringsregler som Krum, Brute och Bulyan. Vi kommer också att injicera motståndare under modellutbildningen för att observera vilka av de ovannämnda aggregeringsreglerna som ger bättre motståndskraft mot bysantinska lutningar.
|
Page generated in 0.0551 seconds