Geri Dön

C-Stream: A coroutine-based elastic stream processing engine

C-Stream: Eş program tabanlı esnek akan veri işleme motoru

  1. Tez No: 392047
  2. Yazar: SEMİH ŞAHİN
  3. Danışmanlar: DOÇ. DR. BUĞRA GEDİK
  4. Tez Türü: Yüksek Lisans
  5. Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2015
  8. Dil: İngilizce
  9. Üniversite: İhsan Doğramacı Bilkent Üniversitesi
  10. Enstitü: Mühendislik ve Fen Bilimleri Enstitüsü
  11. Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
  12. Bilim Dalı: Belirtilmemiş.
  13. Sayfa Sayısı: 53

Özet

Akan veri işleme, canlı veriyi havada işleme üzerine olan bir programlama paradigmasıdır. Bu paradigma içinde barındırdığı ardışık düzen, veri ve görev paralelleştirme methodlarını kullanarak, uygulamaların birim zamanda üretilen iş miktarını arttırmasına yada birim iş parçası başına duşen ortalama işlem süresinin azalmasına olanak saglar. Bu tez çalışmasında, elastik akan veri işleme motoru olan C-Stream dizayn ve uygulamaları geliştirilmiştir. İlk olarak C-Stream, literatürdeki çalışmaların çoğunluğunun benimsediği olaya-dayalı işleç geliştirme methodunun aksine eş-program tabanlı işleç geliştirme modelini sunmaktadır. Bu modelde her işleç, kendi kontrol döngüsüne sahip olmakta, veri erişilebilirlik uygulama programi arabirimi (UPA) ile veri işleme zamanını kontrol edebilmektedir. Bu model çok-portlu işleç geliştirme sürecini basitleştirmektedir. Ikinci olarak, C-Stream işleçlerin çalışmasını kontrol eden, çok izlekli dinamik zamanlayıcı barındırmaktadır. Bu zamanlayıcı, eklentiler ile de özelleştirilebilmektedir. Eklentilerden bagımsız olarak, zamanlayıcı geri-baski problemini çozer, işleçlerin veri erişilebilirlik UPA'sına ulaşımını saglar, işleçlerin çalısma esnasında durdurulması ve sonlanmasını kontrol eder. Son olarak, C-Stream elastik paralelleştirme ozelliğine sahiptir. Dinamik olarak aktif çalısan izlek sayısını kontrol etmekle beraber, uygulamada tıkanmaya sebep olan işleçleri tespit ederek, onların kopya sayısını arttırır ve tıkanmayı ortadan kaldırır. Yaptığımız deneyler gostermektedir ki, C-Stream ölçeklenebilir, özelleştirilebilir ve esnek paralelleştirme ozelliğine sahip bir akan veri işleme uygulaması geliştirme motorudur.

Özet (Çeviri)

Stream processing is a computational paradigm for on-the-fly processing of live data. This paradigm lends itself to implementations that can provide high throughput and low latency, by taking advantage of various forms of parallelism that is naturally captured by the stream processing model of computation, such as pipeline, task, and data parallelism. In this thesis, we describe the design and implementation of C-Stream, which is an elastic stream processing engine. C-Stream encompasses three unique properties. First, in contrast to the widely adopted event-based interface for developing stream processing operators, C-Stream provides an interface wherein each operator has its own control loop and rely on data availability APIs to decide when to perform its computations. The self-control based model signifcantly simplifes development of operators that require multi-port synchronization. Second, C-Stream contains a multi-threaded dynamic scheduler that manages the execution of the operators. The scheduler, which is customizable via plug-ins, enables the execution of the operators as co-routines, using any number of threads. The base scheduler implements back-pressure, provides data availability APIs, and manages preemption and termination handling. Last, C-Stream provides elastic parallelization. It can dynamically adjust the number of threads used to execute an application, and can also adjust the number of replicas of data-parallel operators to resolve bottlenecks. We provide an experimental evaluation of C-Stream. The results show that C-Stream is scalable, highly customizable, and can resolve bottlenecks by dynamically adjusting the level of data parallelism used.

Benzer Tezler

  1. The significance and the contribution of 6+1 traits of writing to the success of the students in writing courses in English language teaching

    Yazmanın 6+1 özelliğinin İngilizce öğretiminde yazılı anlatım derslerindeki öğrenci başarısına katkısı ve önemi

    ÖZLEM YAZAR

    Yüksek Lisans

    İngilizce

    İngilizce

    2004

    Eğitim ve ÖğretimGazi Üniversitesi

    İngiliz Dili Eğitimi Ana Bilim Dalı

    YRD. DOÇ. DR. PAŞA TEVFİK CEPHE

  2. Comparison of clustering algorithms in a single user environment

    Tek kullanıcılı ortamlar için kümelendirme algoritmalarının karşılaştırılması

    KADİR KOÇ

    Yüksek Lisans

    İngilizce

    İngilizce

    1993

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolOrta Doğu Teknik Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    PROF. DR. ASUMAN DOĞAÇ

  3. A Statistical information extraction system for Turkish

    Türkçe için istatistiksel bir bilgi çıkarım sistemi

    GÖKHAN TÜR

    Doktora

    İngilizce

    İngilizce

    2000

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİhsan Doğramacı Bilkent Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DOÇ. DR. KEMAL OFLAZER

  4. Coğrafi Bilgi Sistemi ile akarsu havzası modelleme ve taşkın analizi

    River basin modeling and flood analysis using Geographic Information System

    BUKET GÜL YILMAZ

    Doktora

    Türkçe

    Türkçe

    2022

    İnşaat MühendisliğiEskişehir Osmangazi Üniversitesi

    İnşaat Mühendisliği Ana Bilim Dalı

    PROF. DR. MİZAN DOĞAN