Tilbake til søkeresultatene

FRINATEK-Fri prosj.st. mat.,naturv.,tek

Exploiting Abstract Data-Access Patterns for Better Data Locality in Parallel Processing

Alternativ tittel: Utnytte abstrakte datatilgangsmønstre til å forbedre datalokalitet i parallell prosessering

Tildelt: kr 8,0 mill.

Den digitaliserte verden øker distribuerte tjenester, og programvaren går mot fleksible distribuerte og parallelle behandlingsmiljøer. Dårlig utformede parallelle applikasjoner kan redusere ytelsen på grunn av forsinkelser i tilgang til eksterne tjenester, treg kommunikasjon og hotspots med mange prosesser med forskjellige avhengigheter. På sitt verste betyr dette at et system kan kollapse når etterspørselen øker betydelig, for eksempel et skattesystem kollapser dagen før returen skal betales, eller en nettbutikk krasjer en uke før jul. ADAPT -prosjektet har som mål å bidra til løsningen av disse problemene ved å formalisere begrepet tilgangsmønstre som beskriver hvordan prosesser får tilgang til ressurser, for eksempel beregning, minne, nettverk, data. Prosjektet studerer hvordan de skal representere disse mønstrene for en bestemt distribuert applikasjon før eksekvering, og hvordan de kan brukes senere til å overvåke og kontrollere prosessfordeling, ressursallokering og databevegelse av applikasjonen mens den kjører. Dette vil muliggjøre bedre tjenestestyring og kunne forhindre ytelse forringelse som kan forårsaker driftsfeil. ADAPTs forskningsagenda er basert på to hypoteser. For det første kan applikasjonsspesifikk administrasjon forbedre ytelsen til svært skalerbare applikasjoner som har tilgang til store mengder ressurser. For det andre muliggjør abstraksjoner, formelt grunnlag og kjørbar modellering modellbaserte analyseteknikker som kan forutsi kjøretidsbeslutninger for å forbedre administrasjonen av en bestemt applikasjon. Derfor har ADAPT-prosjektet utviklet en formell modell som abstrakt fanger opp samspillet mellom arbeidsflyter med dynamisk opprettede oppgaver og distribusjonssteder i parallelle og distribuerte miljøer. Konkret, en distribuert modell av Kubernetes-distribusjon. Disse abstrakte modellene danner grunnlaget for å kombinere modellbaserte simuleringer med formell analyse, ved bruk av tilgangsmønstre, for bedre å kontrollere administrasjonen for en spesifikk applikasjon. Tilnærmingen har blitt validert med en proof-of-concept-metodikk brukt på en velkjent cloud-native demo, nettbutikken, brukt i industrien.

Cloud computing has radically changed the way organizations operate their Software by allowing them to achieve high availability of services at affordable cost. Containerized microservices are an enabling technology for this change, and advanced container orchestration platforms such as Kubernetes are used for service management. Despite the flourishing ecosystem of monitoring tools for such orchestration platforms, service management is still mainly a manual effort. The modeling of cloud computing systems is an essential step towards automatic management, but the modeling of cloud systems of such complexity remains challenging and yet, unaddressed. In fact, such modeling approaches might be key to predicting future outcomes. Results in this project consider how to derive models for cloud systems empirically. We do so based on models of deployed services in a formal modeling language; once the adherence to the real system is good enough, formal properties can be explored in the model. In the project, we have used data collected empirically from small scenarios to simulate the execution of higher-intensity scenarios, to predict resource consumption. A similar approach can be further used for other sorts of predictions.

The software that we are dependent upon for daily life, business and administration is moving to scalable architectures, where tasks, combined in parallel workflows, process multiple data sources at the same time. However, scalability and parallelism can reduce software performance when tasks interact with data, for example when tasks access remote data or tasks modify shared data. Such issues are challenging to find and mitigate in a systematic or automatic way. This motivate the aim of the ADAPT project, which is to improve data processing, by systematically extracting data-access patterns from applications and by designing data management strategies that uses such patterns. The ADAPT project is formalizing the notion of data-access patterns that describes abstractly how computation interacts with memory. ADAPT combines formal models of parallel systems with basic research in programming language theory, with the aim of developing novel techniques to improve data locality and demonstrating their applicability by means of experimental proof of concept. This approach may lead to completely new ways of efficiently managing data processing on parallel architectures, both with respect to how data is distributed over different memory locations and how data will move between locations during data processing, thereby allowing better data management. ADAPT plans to validate its outcomes on a case study based on state-of-the-art database systems.

Budsjettformål:

FRINATEK-Fri prosj.st. mat.,naturv.,tek