33,282 research outputs found

    A Scalable Algorithm for Decentralized Actor Termination Detection

    Full text link
    Automatic garbage collection (GC) prevents certain kinds of bugs and reduces programming overhead. GC techniques for sequential programs are based on reachability analysis. However, testing reachability from a root set is inadequate for determining whether an actor is garbage: Observe that an unreachable actor may send a message to a reachable actor. Instead, it is sufficient to check termination (sometimes also called quiescence): an actor is terminated if it is not currently processing a message and cannot receive a message in the future. Moreover, many actor frameworks provide all actors with access to file I/O or external storage; without inspecting an actor's internal code, it is necessary to check that the actor has terminated to ensure that it may be garbage collected in these frameworks. Previous algorithms to detect actor garbage require coordination mechanisms such as causal message delivery or nonlocal monitoring of actors for mutation. Such coordination mechanisms adversely affect concurrency and are therefore expensive in distributed systems. We present a low-overhead deferred reference listing technique (called DRL) for termination detection in actor systems. DRL is based on asynchronous local snapshots and message-passing between actors. This enables a decentralized implementation and transient network partition tolerance. The paper provides a formal description of DRL, shows that all actors identified as garbage have indeed terminated (safety), and that all terminated actors--under certain reasonable assumptions--will eventually be identified (liveness)

    Scalable Termination Detection for Distributed Actor Systems

    Full text link
    Automatic garbage collection (GC) prevents certain kinds of bugs and reduces programming overhead. GC techniques for sequential programs are based on reachability analysis. However, testing reachability from a root set is inadequate for determining whether an actor is garbage because an unreachable actor may send a message to a reachable actor. Instead, it is sufficient to check termination (sometimes also called quiescence): an actor is terminated if it is not currently processing a message and cannot receive a message in the future. Moreover, many actor frameworks provide all actors with access to file I/O or external storage; without inspecting an actor’s internal code, it is necessary to check that the actor has terminated to ensure that it may be garbage collected in these frameworks. Previous algorithms to detect actor garbage require coordination mechanisms such as causal message delivery or nonlocal monitoring of actors for mutation. Such coordination mechanisms adversely affect concurrency and are therefore expensive in distributed systems. We present a low-overhead reference listing technique (called DRL) for termination detection in actor systems. DRL is based on asynchronous local snapshots and message-passing between actors. This enables a decentralized implementation and transient network partition tolerance. The paper provides a formal description of DRL, shows that all actors identified as garbage have indeed terminated (safety), and that all terminated actors - under certain reasonable assumptions - will eventually be identified (liveness)

    Ozone: Fully Out-of-Order Choreographies (Artifact)

    Full text link
    Choreographic programming is a paradigm for writing distributed applications. It allows programmers to write a single program, called a choreography, that can be compiled to generate correct implementations of each process in the application. Although choreographies provide good static guarantees, they can exhibit high latency when messages or processes are delayed. This is because processes in a choreography typically execute in a fixed, deterministic order, and cannot adapt to the order that messages arrive at runtime. In non-choreographic code, programmers can address this problem by allowing processes to execute out of order - for instance by using futures or reactive programming. However, in choreographic code, out-of-order process execution can lead to serious and subtle bugs, called communication integrity violations (CIVs). In this paper, we develop a model of choreographic programming for out-of-order processes that guarantees absence of CIVs and deadlocks. As an application of our approach, we also introduce an API for safe non-blocking communication via futures in the choreographic programming language Choral. The API allows processes to execute out of order, participate in multiple choreographies concurrently, and to handle unordered data messages. We provide an illustrative evaluation of our API, showing that out-of-order execution can reduce latency and increase throughput by overlapping communication with computation

    Ozone: Fully Out-of-Order Choreographies

    Full text link
    Choreographic programming is a paradigm for writing distributed applications. It allows programmers to write a single program, called a choreography, that can be compiled to generate correct implementations of each process in the application. Although choreographies provide good static guarantees, they can exhibit high latency when messages or processes are delayed. This is because processes in a choreography typically execute in a fixed, deterministic order, and cannot adapt to the order that messages arrive at runtime. In non-choreographic code, programmers can address this problem by allowing processes to execute out of order - for instance by using futures or reactive programming. However, in choreographic code, out-of-order process execution can lead to serious and subtle bugs, called communication integrity violations (CIVs). In this paper, we develop a model of choreographic programming for out-of-order processes that guarantees absence of CIVs and deadlocks. As an application of our approach, we also introduce an API for safe non-blocking communication via futures in the choreographic programming language Choral. The API allows processes to execute out of order, participate in multiple choreographies concurrently, and to handle unordered data messages. We provide an illustrative evaluation of our API, showing that out-of-order execution can reduce latency and increase throughput by overlapping communication with computation

    Fault-tolerant and fault-recovering garbage collection for the actor model: a collage-based approach

    Full text link
    Submission original under an indefinite embargo labeled 'Open Access'. The submission was exported from vireo on 2024-09-16 without embargo termsThe student, Dan Plyukhin, accepted the attached license on 2024-04-18 at 13:00.The student, Dan Plyukhin, submitted this Dissertation for approval on 2024-04-18 at 13:25.This Dissertation was approved for publication on 2024-04-18 at 16:30.DSpace SAF Submission Ingestion Package generated from Vireo submission #20479 on 2024-09-16 at 00:35:23An actor garbage collector (actor GC) is a tool for automatically identifying actors that are safe to delete, and reclaiming their resources. Actor GC could be particularly useful in distributed applications, because programmers have difficulty reclaiming resources after faults such as crashed nodes or dropped messages. Unfortunately, faults are a pain point in existing actor GCs: in existing approaches, an actor on a crashed node with a reference to an actor on a healthy node will prevent the healthy actor---and its references---from ever being garbage collected. Moreover, existing GC algorithms have poor scalability in a distributed systems. This is because of the synchronization and message overhead they introduce by requiring causal delivery, or by introducing a large number of control messages. For these reasons, it has not been practical to add actor GC to popular frameworks like Akka and Erlang. This thesis explores an emerging technique for actor GC, dubbed the collage-based approach. Collage-based GCs are capable of high performance because they do not dictate when an actor should participate in garbage collection, and by design they naturally make progress with only partial information. The thesis presents two collage-based GCs: PRL and CRGC. Both GCs are provably correct and impose no locks, memory barriers, or message ordering requirements. PRL uses distributed reference listing to collect acyclic garbage and allows node-local garbage collectors to detect distributed cyclic garbage via a lightweight gossip protocol. We then use insights from PRL to develop CRGC: the first actor GC capable of recovering from crashed nodes and dropped messages. We have formalized CRGC in TLA+ and implemented CRGC in Akka. Preliminary evaluation shows that CRGC imposes little overhead in practice and is capable of collecting actors that become garbage caused by crashed nodes

    Alaskan Author and Historian Dan O'Neill

    No full text
    Dan O'Neill has become a living legend in Alaska. He is the author of The Firecracker Boys: H-Bombs, Inupiat Eskimos, and the Roots of the Environmental Movement; A Land Gone Lonesome: An Inland Voyage Along the Yukon River; The Last Giant of Beringia: The Mystery of the Bering Land Bridge, and recently Stubborn Gal: The True Story of an Undefeated Sled Dog Racer, a children's book published by the University of Alaska Press. Dan came to Alaska in 1975 and has done a variety of things including dog mushing, trapping, hunting, working in construction, and on the pipeline. As research associate at the UAF Oral History program, he produced radio and television documentaries for public broadcasting, and for several years he wrote a column of political opinion for the Fairbanks Daily News-Miner

    PERANCANGAN APLIKASI ELECTRONIC MEDICAL RECORD (EMR) PADA INSTALASI RAWAT INAP BERBASIS WEB

    Full text link
    Pelayanan medik dewasa ini membutuhkan sistem yang lebih efektif dan efisien, baik dalam penggunaan waktu, tenaga maupun sarana. Dalam pengelolaan rekam medik, kenyataan masih umumnya penggunaan rekam medik manual yang dinilai tak lagi andal menangani data medik melahirkan ide konversi rekam medik manual kertas ke rekam medik elektronik karena efektivitas dan efisiensinya. Penelitian ini bertujuan menciptakan aplikasi rekam medik elektronik yang lebih dikenal sebagai EMR (Electronic Medical Record) dari rekam medik kertas di Instalasi Rawat Inap Rumah Sakit Umum Ananda Salatiga. Rekam medik elektronik dirancang dengan membuat form-form isian catatan-catatan medik dalam proses perawatan pasien selama dirawat. Data-data medik ini kemudian disimpan dalam basis data sistem dan dikelola secara digital. Setiap kali pengisian data medik pada form-form tertentu, sistem akan menghasilkan kode yang membawa informasi khusus. Pada akhirnya, sistem akan menghasilkan deret kode ICD (International Statistical Classification of Diseases and Related Health Problems) dari kode-kode yang dihasilkan pada pengisian form-form catatan medik. Deretan kode-kode ini mampu menggambarkan perkembangan kondisi pasien dan penanganan medik yang diberikan selama perawatan. Data-data medik yang tersimpan dapat ditampilkan kembali dalam bentuk catatan medik digital. Kata kunci: rekam medik, rawat inap, EMR, IC

    Correspondence regarding the possiblity of a Kephart Memorial

    No full text
    This 1968 correspondence, between Jackson E. Price and Dan Davis, discusses the possibility of “Memorial Center” to Horace Kephart (1862-1931), noted naturalist, woodsman, journalist, and author and promoter of the Great Smoky Mountains National Park

    Analisis Tata Kelola Maritim Indonesia: Implementasi Visi Pemerintah Daerah Istimewa Yogyakarta

    Full text link
    Indonesia sebagai negara maritim memiliki banyak peluang dan ancaman. Hal tersebut memerlukan adanya perhatian yang lebih besar terhadap wilayah laut. Penelitian ini membahas strategi Pemerintah Indonesia untuk meningkatkan peluang ekonomi dan mengatasi tantangan melalui Poros Maritim Dunia. Tujuan riset ini adalah menganalisa kebijakan Pemerintah Indonesia dan Pemerintah Provinsi Daerah Istimewa Yogyakarta (DIY) dalam pengembangan wilayah pesisir menggunakan teori geopolitik dan teori kekuatan laut. Penelitian ini menerapkan metode kualitatif studi kasus. Data yang digunakan berupa data primer melalui wawancara dan data sekunder yang diperoleh dari buku, artikel jurnal dan publikasi daring. Penulis menemukan bahwa sinergitas penegak hukum, diplomasi maritim sudah cukup baik, namun perlu lebih aktif melibatkan masyarakat untuk pengelolaan sumber daya hayati yang berkelanjutan dan peningkatan SDM masyarakat pesisir. Sementara Visi Gubernur DIY bernama Abad Samudera Hindia belum terlaksana dengan maksimal. Masyarakat membutuhkan tambahan pembangunan TPI baru dan pengembangan TPI menjadi PPN dan PPS untuk meningkatkan produktivitas dan kesejahteraan nelayan. Dapat disimpulkan bahwa pemerintah pusat dan daerah harus selalu memperhatikan pengelolaan laut, khususnya untuk pemanfaatan sumber daya dan pangan. Bahwa laut memiliki kekayaan alam yang berlimpah dapat digunakan meningkatkan gizi masyarakat dan pendapatan negara. Title: Indonesian Maritime Governance Analysis: Implementation of the Vision of the Yogyakarta Special Region GovernmentIndonesia, as a maritime country, has many opportunities and threats. This condition requires greater attention to the sea area. This research discusses the strategy of the Government of Indonesia to increase economic opportunities and overcome challenges through the World Maritime Fulcrum. This research aims to analyze the policies of the Government of Indonesia and the Provincial Government of DIY in developing coastal areas using geopolitical theory and the theory of sea power. This study uses a qualitative case study method. The data used are primary data through interviews and secondary data obtained from books, journal articles and online publications. The author finds that the synergism between law enforcement and maritime diplomacy is good enough. However, it is necessary to involve the community more actively in the sustainable management of biological resources and to increase the human resources of coastal communities. Meanwhile, the vision of the Governor of DIY called the Century of the Indian Ocean, has not been implemented optimally. The community needs additional construction of new TPI and development of TPI to become PPN and PPS to increase the productivity and welfare of fishermen. It can be concluded that the central and regional governments must always pay attention to marine management, especially for utilising resources and food. That the sea has abundant natural wealth can be used to improve people’s nutrition and state income
    corecore