229 research outputs found

    Restricted permutations, antichains, atomic classes and stack sorting

    Get PDF
    Involvement is a partial order on all finite permutations, of infinite dimension and having subsets isomorphic to every countable partial order with finite descending chains. It has attracted the attention of some celebrated mathematicians including Paul Erdล‘s and, due to its close links with sorting devices, Donald Knuth. We compare and contrast two presentations of closed classes that depend on the partial order of involvement: Basis or Avoidance Set, and Union of Atomic Classes. We examine how the basis is affected by a comprehensive list of closed class constructions and decompositions. The partial order of involvement contains infinite antichains. We develop the concept of a fundamental antichain. We compare the concept of 'fundamental' with other definitions of minimality for antichains, and compare fundamental permutation antichains with fundamental antichains in graph theory. The justification for investigating fundamental antichains is the nice patterns they produce. We forward the case for classifying the fundamental permutation antichains. Sorting devices have close links with closed classes. We consider two sorting devices, constructed from stacks in series, in detail. We give a comment on an enumerative conjecture by Ira Gessel. We demonstrate, with a remarkable example, that there exist two closed classes, equinumerous, one of which has a single basis element, the other infinitely many basis elements. We present this paper as a comprehensive analysis of the partial order of permutation involvement. We regard the main research contributions offered here to be the examples that demonstrate what is, and what is not, possible; although there are numerous structure results that do not fall under this category. We propose the classification of fundamental permutation antichains as one of the principal problems for closed classes today, and consider this as a problem whose solution will have wide significance for the study of partial orders, and mathematics as a whole

    Models and Algorithms for Sorting Permutations with Tandem Duplication and Random Loss

    Get PDF
    A central topic of evolutionary biology is the inference of phylogeny, i. e., the evolutionary history of species. A powerful tool for the inference of such phylogenetic relationships is the arrangement of the genes in mitochondrial genomes. The rationale is that these gene arrangements are subject to different types of mutations in the course of evolution. Hence, a high similarity in the gene arrangement between two species indicates a close evolutionary relation. Metazoan mitochondrial gene arrangements are particularly well suited for such phylogenetic studies as they are available for a wide range of species, their gene content is almost invariant, and usually free of duplicates. With these properties gene arrangements of mitochondrial genomes are modeled by permutations in which each element represents a gene, i. e., a specific genetic sequence. The mutations that shape the gene arrangement of genomes are then represented by operations that rearrange elements in permutations, so-called genome rearrangements, and thereby bridge the gap between evolutionary biology and optimization. Many problems of phylogeny inference can be formulated as challenging combinatorial optimization problems which makes this research area especially interesting for computer scientists. The most prominent examples of such optimization problems are the sorting problem and the distance problem. While the sorting problem requires a minimum length sequence of rearrangements that transforms one given permutation into another given permutation, i. e., it aims for a hypothetical scenario of gene order evolution, the distance problem intends to determine only the length of such a sequence. This minimum length is called distance and used as a (dis)similarity measure quantifying the evolutionary relatedness. Most evolutionary changes occurring in gene arrangements of mitochondrial genomes can be explained by the tandem duplication random loss (TDRL) genome rearrangement model. A TDRL consists of a duplication of a consecutive set of genes in tandem followed by a random loss of one copy of each duplicated gene. In spite of the importance of the TDRL genome rearrangement in mitochondrial evolution, its combinatorial properties have rarely been studied. In addition, models of genome rearrangements which include all types of rearrangement that are relevant for mitochondrial genomes, i. e., inversions, transpositions, inverse transpositions, and TDRLs, while admitting computational tractability are rare. Nevertheless, especially for metazoan gene arrangements the TDRL rearrangement should be considered for the reconstruction of phylogeny. Realizing that a better understanding of the TDRL model is indispensable for the study of mitochondrial gene arrangements, the central theme of this thesis is to broaden the horizon of TDRL genome rearrangements with respect to mitochondrial genome evolution. For this purpose, this thesis provides combinatorial properties of the TDRL model and its variants as well as efficient methods for a plausible reconstruction of rearrangement scenarios between gene arrangements. The methods that are proposed consider all types of genome rearrangements that predominately occur during mitochondrial evolution. More precisely, the main points contained in this thesis are as follows: The distance problem and the sorting problem for the TDRL model are further examined in respect to circular permutations, a formal concept that reflects the circular structure of mitochondrial genomes. As a result, a closed formula for the distance is provided. Recently, evidence for a variant of the TDRL rearrangement model in which the duplicated set of genes is additionally inverted have been found. Initiating the algorithmic study of this new rearrangement model on a certain type of permutations, a closed formula solving the distance problem is proposed as well as a quasilinear time algorithm that solves the corresponding sorting problem. The assumption that only one type of genome rearrangement has occurred during the evolution of certain gene arrangements is most likely unrealistic, e. g., at least three types of rearrangements on top of the TDRL rearrangement have to be considered for the evolution metazoan mitochondrial genomes. Therefore, three different biologically motivated constraints are taken into account in this thesis in order to produce plausible evolutionary rearrangement scenarios. The first constraint is extending the considered set of genome rearrangements to the model that covers all four common types of mitochondrial genome rearrangements. For this 4-type model a sharp lower bound and several close additive upper bounds on the distance are developed. As a byproduct, a polynomial-time approximation algorithm for the corresponding sorting problem is provided that guarantees the computation of pairwise rearrangement scenarios that deviate from a minimum length scenario by at most two rearrangement operations. The second biologically motivated constraint is the relative frequency of the different types of rearrangements occurring during the evolution. The frequency is modeled by employing a weighting scheme on the 4-type model in which every rearrangement is weighted with respect to its type. The resulting NP-hard sorting problem is then solved by means of a polynomial size integer linear program. The third biologically motivated constraint that has been taken into account is that certain subsets of genes are often found in close proximity in the gene arrangements of many different species. This observation is reflected by demanding rearrangement scenarios to preserve certain groups of genes which are modeled by common intervals of permutations. In order to solve the sorting problem that considers all three types of biologically motivated constraints, the exact dynamic programming algorithm CREx2 is proposed. CREx2 has a linear runtime for a large class of problem instances. Otherwise, two versions of the CREx2 are provided: The first version provides exact solutions but has an exponential runtime in the worst case and the second version provides approximated solutions efficiently. CREx2 is evaluated by an empirical study for simulated artificial and real biological mitochondrial gene arrangements

    Algorithm Libraries for Multi-Core Processors

    Get PDF
    By providing parallelized versions of established algorithm libraries, we ease the exploitation of the multiple cores on modern processors for the programmer. The Multi-Core STL provides basic algorithms for internal memory, while the parallelized STXXL enables multi-core acceleration for algorithms on large data sets stored on disk. Some parallelized geometric algorithms are introduced into CGAL. Further, we design and implement sorting algorithms for huge data in distributed external memory

    Enhanced Algorithms for Analysis and Design of Nucleic Acid Reaction Pathways

    Get PDF
    Nucleic acids provide a powerful platform for programming at the molecular level. This is possible because the free energy of nucleic acid structures is dominated by the local interactions of base pairing and base pair stacking. The nearest neighbor secondary structure model implied by these energetics has enabled development of a set of algorithms for calculating thermodynamic quantities of nucleic acid sequences. Molecular programmers and synthetic biologists continue to extend their reach to larger, more complicated nucleic acid complexes, reaction pathways, and systems. This necessitates a focus on new algorithm development and efficient implementations to enable analysis and design of such systems. Concerning analysis of nucleic acids, we collect seemingly diverse algorithms under a unified three-component dynamic programming framework consisting of: 1) recursions that specify the dependencies between subproblems and incorporate the details of the structural ensemble and the free energy model, 2) evaluation algebras that define the mathematical form of each subproblem, 3) operation orders that specify the computational trajectory through the dependency graph of subproblems. Changes to the set of recursions allows operation over the complex ensemble including coaxial and dangle stacking states, affecting all thermodynamic quantities. An updated operation order for structure sampling allows simultaneous generation of a set of structures sampled from the Boltzmann distribution in time that scales empirically sublinearly in the number of samples and leads to an order of magnitude or more speedup over repeated single-structure sampling. For the problem of sequence design for reaction pathway engineering, we introduce an optimization algorithm to minimize the multitstate test tube ensemble defect, which simultaneously designs for reactant, intermediate, and product states along the reaction pathway (positive design) and against crosstalk interactions (negative design). Each of these on-pathway or crosstalk states is represented as a target test tube ensemble containing arbitrary numbers of on-target complexes, each with a target secondary structure and target concentration, and arbitrary numbers of off-target complexes, each with vanishing target concentration. Our test tube specification formalism enables conversion of a reaction pathway specification into a set of target test tubes. Sequences are designed subject to a set of hard constraints allowing specification of properties such as sequence composition, sequence complementarity, prevention of unwanted sequence patterns, and inclusion of biological sequences. We then extend this algorithm with soft constraints, enhancing flexibility through new constraint types and reducing design cost by up to two orders of magnitude in the most highly constrained cases. These soft constraints enable multiobjective design of the multitstate test tube ensemble defect simultaneously with heuristics for avoiding kinetic traps and equalizing reaction rates to further aid reaction pathway engineering.</p

    A Survey on Compiler Autotuning using Machine Learning

    Full text link
    Since the mid-1990s, researchers have been trying to use machine-learning based approaches to solve a number of different compiler optimization problems. These techniques primarily enhance the quality of the obtained results and, more importantly, make it feasible to tackle two main compiler optimization problems: optimization selection (choosing which optimizations to apply) and phase-ordering (choosing the order of applying optimizations). The compiler optimization space continues to grow due to the advancement of applications, increasing number of compiler optimizations, and new target architectures. Generic optimization passes in compilers cannot fully leverage newly introduced optimizations and, therefore, cannot keep up with the pace of increasing options. This survey summarizes and classifies the recent advances in using machine learning for the compiler optimization field, particularly on the two major problems of (1) selecting the best optimizations and (2) the phase-ordering of optimizations. The survey highlights the approaches taken so far, the obtained results, the fine-grain classification among different approaches and finally, the influential papers of the field.Comment: version 5.0 (updated on September 2018)- Preprint Version For our Accepted Journal @ ACM CSUR 2018 (42 pages) - This survey will be updated quarterly here (Send me your new published papers to be added in the subsequent version) History: Received November 2016; Revised August 2017; Revised February 2018; Accepted March 2018

    A Group-Based Ring Oscillator Physical Unclonable Function

    Get PDF
    Silicon Physical Unclonable Function (PUF) is a physical structure of the chip which has functional characteristics that are hard to predict before fabrication but are expected to be unique after fabrication. This is caused by the random fabrication variations. The secret characteristics can only be extracted through physical measurement and will vanish immediately when the chip is powered down. PUF promises a securer means for cryptographic key generation and storage among many other security applications. However, there are still many practical challenges to cost effectively build secure and reliable PUF secrecy. This dissertation proposes new architectures for ring oscillator (RO) PUFs to answer these challenges. First, our temperature-aware cooperative (TAC) RO PUF can utilize certain ROs that were otherwise discarded due to their instability. Second, our novel group-based algorithm can generate secrecy higher than the theoretical upper bound of the conventional pairwise comparisons approach. Third, we build the first regression-based entropy distiller that can turn the PUF secrecy statistically random and robust, meeting the NIST standards. Fourth, we develop a unique Kendall syndrome coding (KSC) that makes the PUF secrecy error resilient against potential environmental fluctuations. Each of these methods can improve the hardware efficiency of the RO PUF implementation by 1.5X to 8X while improving the security and reliability of the PUF secrecy

    Routines and Applications of Symbolic Algebra Software

    Get PDF
    Computing has become an essential resource in modern research and has found application across a wide range of scientific disciplines. Developments in symbolic algebra tools have been particularly valuable in physics where calculations in fields such as general relativity, quantum field theory and physics beyond the standard model are becoming increasing complex and unpractical to work with by hand. The computer algebra system Cadabra is a tensor-first approach to symbolic algebra based on the programming language Python which has been used extensively in research in these fields while also having a shallow learning curve making it an excellent way to introduce students to methods in computer algebra. The work in this thesis has been concentrated on developing Cadabra, which has involved looking at two different elements which make up a computer algebra program. Firstly, the implementation of algebraic routines is discussed. This has primarily been focused on the introduction of an algorithm for detecting the equivalence of tensorial expressions related by index permutation symmetries. The method employed differs considerably from traditional canonicalisation routines which are commonly used for this purpose by using Young projection operators to make such symmetries manifest. The other element of writing a computer algebra program which is covered is the infrastruc- ture and environment. The importance of this aspect of software design is often overlooked by funding committees and academic software users resulting in an anti-pattern of code not being shared and contributed to in the way in which research itself is published and promulgated. The focus in this area has been on implementing a packaging system for Cadabra which allows the writing of generic libraries which can be shared by the community, and interfacing with other scientific computing packages to increase the capabilities of Cadabra

    Evolution of whole genomes through inversions:models and algorithms for duplicates, ancestors, and edit scenarios

    Get PDF
    Advances in sequencing technology are yielding DNA sequence data at an alarming rate โ€“ a rate reminiscent of Moore's law. Biologists' abilities to analyze this data, however, have not kept pace. On the other hand, the discrete and mechanical nature of the cell life-cycle has been tantalizing to computer scientists. Thus in the 1980s, pioneers of the field now called Computational Biology began to uncover a wealth of computer science problems, some confronting modern Biologists and some hidden in the annals of the biological literature. In particular, many interesting twists were introduced to classical string matching, sorting, and graph problems. One such problem, first posed in 1941 but rediscovered in the early 1980s, is that of sorting by inversions (also called reversals): given two permutations, find the minimum number of inversions required to transform one into the other, where an inversion inverts the order of a subpermutation. Indeed, many genomes have evolved mostly or only through inversions. Thus it becomes possible to trace evolutionary histories by inferring sequences of such inversions that led to today's genomes from a distant common ancestor. But unlike the classic edit distance problem where string editing was relatively simple, editing permutation in this way has proved to be more complex. In this dissertation, we extend the theory so as to make these edit distances more broadly applicable and faster to compute, and work towards more powerful tools that can accurately infer evolutionary histories. In particular, we present work that for the first time considers genomic distances between any pair of genomes, with no limitation on the number of occurrences of a gene. Next we show that there are conditions under which an ancestral genome (or one close to the true ancestor) can be reliably reconstructed. Finally we present new methodology that computes a minimum-length sequence of inversions to transform one permutation into another in, on average, O(n log n) steps, whereas the best worst-case algorithm to compute such a sequence uses O(nโˆšn log n) steps

    ์ง์ ‘ ๋ณผ๋ฅจ ๋ Œ๋”๋ง์—์„œ ์ ์ง„์  ๋ Œ์ฆˆ ์ƒ˜ํ”Œ๋ง์„ ์‚ฌ์šฉํ•œ ํ”ผ์‚ฌ๊ณ„ ์‹ฌ๋„ ๋ Œ๋”๋ง

    Get PDF
    ํ•™์œ„๋…ผ๋ฌธ (๋ฐ•์‚ฌ) -- ์„œ์šธ๋Œ€ํ•™๊ต ๋Œ€ํ•™์› : ๊ณต๊ณผ๋Œ€ํ•™ ์ „๊ธฐยท์ปดํ“จํ„ฐ๊ณตํ•™๋ถ€, 2021. 2. ์‹ ์˜๊ธธ.Direct volume rendering is a widely used technique for extracting information from 3D scalar fields acquired by measurement or numerical simulation. To visualize the structure inside the volume, the voxels scalar value is often represented by a translucent color. This translucency of direct volume rendering makes it difficult to perceive the depth between the nested structures. Various volume rendering techniques to improve depth perception are mainly based on illustrative rendering techniques, and physically based rendering techniques such as depth of field effects are difficult to apply due to long computation time. With the development of immersive systems such as virtual and augmented reality and the growing interest in perceptually motivated medical visualization, it is necessary to implement depth of field in direct volume rendering. This study proposes a novel method for applying depth of field effects to volume ray casting to improve the depth perception. By performing ray casting using multiple rays per pixel, objects at a distance in focus are sharply rendered and objects at an out-of-focus distance are blurred. To achieve these effects, a thin lens camera model is used to simulate rays passing through different parts of the lens. And an effective lens sampling method is used to generate an aliasing-free image with a minimum number of lens samples that directly affect performance. The proposed method is implemented without preprocessing based on the GPU-based volume ray casting pipeline. Therefore, all acceleration techniques of volume ray casting can be applied without restrictions. We also propose multi-pass rendering using progressive lens sampling as an acceleration technique. More lens samples are progressively used for ray generation over multiple render passes. Each pixel has a different final render pass depending on the predicted maximum blurring size based on the circle of confusion. This technique makes it possible to apply a different number of lens samples for each pixel, depending on the degree of blurring of the depth of field effects over distance. This acceleration method reduces unnecessary lens sampling and increases the cache hit rate of the GPU, allowing us to generate the depth of field effects at interactive frame rates in direct volume rendering. In the experiments using various data, the proposed method generated realistic depth of field effects in real time. These results demonstrate that our method produces depth of field effects with similar quality to the offline image synthesis method and is up to 12 times faster than the existing depth of field method in direct volume rendering.์ง์ ‘ ๋ณผ๋ฅจ ๋ Œ๋”๋ง(direct volume rendering, DVR)์€ ์ธก์ • ๋˜๋Š” ์ˆ˜์น˜ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์œผ๋กœ ์–ป์€ 3์ฐจ์› ๊ณต๊ฐ„์˜ ์Šค์นผ๋ผ ํ•„๋“œ(3D scalar fields) ๋ฐ์ดํ„ฐ์—์„œ ์ •๋ณด๋ฅผ ์ถ”์ถœํ•˜๋Š”๋ฐ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ์ˆ ์ด๋‹ค. ๋ณผ๋ฅจ ๋‚ด๋ถ€์˜ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์‹œํ™”ํ•˜๊ธฐ ์œ„ํ•ด ๋ณต์…€(voxel)์˜ ์Šค์นผ๋ผ ๊ฐ’์€ ์ข…์ข… ๋ฐ˜ํˆฌ๋ช…์˜ ์ƒ‰์ƒ์œผ๋กœ ํ‘œํ˜„๋œ๋‹ค. ์ด๋Ÿฌํ•œ ์ง์ ‘ ๋ณผ๋ฅจ ๋ Œ๋”๋ง์˜ ๋ฐ˜ํˆฌ๋ช…์„ฑ์€ ์ค‘์ฒฉ๋œ ๊ตฌ์กฐ ๊ฐ„ ๊นŠ์ด ์ธ์‹์„ ์–ด๋ ต๊ฒŒ ํ•œ๋‹ค. ๊นŠ์ด ์ธ์‹์„ ํ–ฅ์ƒ์‹œํ‚ค๊ธฐ ์œ„ํ•œ ๋‹ค์–‘ํ•œ ๋ณผ๋ฅจ ๋ Œ๋”๋ง ๊ธฐ๋ฒ•๋“ค์€ ์ฃผ๋กœ ์‚ฝํ™”ํ’ ๋ Œ๋”๋ง(illustrative rendering)์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋ฉฐ, ํ”ผ์‚ฌ๊ณ„ ์‹ฌ๋„(depth of field, DoF) ํšจ๊ณผ์™€ ๊ฐ™์€ ๋ฌผ๋ฆฌ ๊ธฐ๋ฐ˜ ๋ Œ๋”๋ง(physically based rendering) ๊ธฐ๋ฒ•๋“ค์€ ๊ณ„์‚ฐ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— ์ ์šฉ์ด ์–ด๋ ต๋‹ค. ๊ฐ€์ƒ ๋ฐ ์ฆ๊ฐ• ํ˜„์‹ค๊ณผ ๊ฐ™์€ ๋ชฐ์ž…ํ˜• ์‹œ์Šคํ…œ์˜ ๋ฐœ์ „๊ณผ ์ธ๊ฐ„์˜ ์ง€๊ฐ์— ๊ธฐ๋ฐ˜ํ•œ ์˜๋ฃŒ์˜์ƒ ์‹œ๊ฐํ™”์— ๋Œ€ํ•œ ๊ด€์‹ฌ์ด ์ฆ๊ฐ€ํ•จ์— ๋”ฐ๋ผ ์ง์ ‘ ๋ณผ๋ฅจ ๋ Œ๋”๋ง์—์„œ ํ”ผ์‚ฌ๊ณ„ ์‹ฌ๋„๋ฅผ ๊ตฌํ˜„ํ•  ํ•„์š”๊ฐ€ ์žˆ๋‹ค. ๋ณธ ๋…ผ๋ฌธ์—์„œ๋Š” ์ง์ ‘ ๋ณผ๋ฅจ ๋ Œ๋”๋ง์˜ ๊นŠ์ด ์ธ์‹์„ ํ–ฅ์ƒ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ๋ณผ๋ฅจ ๊ด‘์„ ํˆฌ์‚ฌ๋ฒ•์— ํ”ผ์‚ฌ๊ณ„ ์‹ฌ๋„ ํšจ๊ณผ๋ฅผ ์ ์šฉํ•˜๋Š” ์ƒˆ๋กœ์šด ๋ฐฉ๋ฒ•์„ ์ œ์•ˆํ•œ๋‹ค. ํ”ฝ์…€ ๋‹น ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ด‘์„ ์„ ์‚ฌ์šฉํ•œ ๊ด‘์„ ํˆฌ์‚ฌ๋ฒ•(ray casting)์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ์ดˆ์ ์ด ๋งž๋Š” ๊ฑฐ๋ฆฌ์— ์žˆ๋Š” ๋ฌผ์ฒด๋Š” ์„ ๋ช…ํ•˜๊ฒŒ ํ‘œํ˜„๋˜๊ณ  ์ดˆ์ ์ด ๋งž์ง€ ์•Š๋Š” ๊ฑฐ๋ฆฌ์— ์žˆ๋Š” ๋ฌผ์ฒด๋Š” ํ๋ฆฌ๊ฒŒ ํ‘œํ˜„๋œ๋‹ค. ์ด๋Ÿฌํ•œ ํšจ๊ณผ๋ฅผ ์–ป๊ธฐ ์œ„ํ•˜์—ฌ ๋ Œ์ฆˆ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ๋ถ€๋ถ„์„ ํ†ต๊ณผํ•˜๋Š” ๊ด‘์„ ๋“ค์„ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ํ•˜๋Š” ์–‡์€ ๋ Œ์ฆˆ ์นด๋ฉ”๋ผ ๋ชจ๋ธ(thin lens camera model)์ด ์‚ฌ์šฉ๋˜์—ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์„ฑ๋Šฅ์— ์ง์ ‘์ ์œผ๋กœ ์˜ํ–ฅ์„ ๋ผ์น˜๋Š” ๋ Œ์ฆˆ ์ƒ˜ํ”Œ์€ ์ตœ์ ์˜ ๋ Œ์ฆˆ ์ƒ˜ํ”Œ๋ง ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜์—ฌ ์ตœ์†Œํ•œ์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ฐ€์ง€๊ณ  ์•จ๋ฆฌ์–ด์‹ฑ(aliasing)์ด ์—†๋Š” ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜์˜€๋‹ค. ์ œ์•ˆํ•œ ๋ฐฉ๋ฒ•์€ ๊ธฐ์กด์˜ GPU ๊ธฐ๋ฐ˜ ๋ณผ๋ฅจ ๊ด‘์„ ํˆฌ์‚ฌ๋ฒ• ํŒŒ์ดํ”„๋ผ์ธ ๋‚ด์—์„œ ์ „์ฒ˜๋ฆฌ ์—†์ด ๊ตฌํ˜„๋œ๋‹ค. ๋”ฐ๋ผ์„œ ๋ณผ๋ฅจ ๊ด‘์„ ํˆฌ์‚ฌ๋ฒ•์˜ ๋ชจ๋“  ๊ฐ€์†ํ™” ๊ธฐ๋ฒ•์„ ์ œํ•œ์—†์ด ์ ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ๋˜ํ•œ ๊ฐ€์† ๊ธฐ์ˆ ๋กœ ๋ˆ„์ง„ ๋ Œ์ฆˆ ์ƒ˜ํ”Œ๋ง(progressive lens sampling)์„ ์‚ฌ์šฉํ•˜๋Š” ๋‹ค์ค‘ ํŒจ์Šค ๋ Œ๋”๋ง(multi-pass rendering)์„ ์ œ์•ˆํ•œ๋‹ค. ๋” ๋งŽ์€ ๋ Œ์ฆˆ ์ƒ˜ํ”Œ๋“ค์ด ์—ฌ๋Ÿฌ ๋ Œ๋” ํŒจ์Šค๋“ค์„ ๊ฑฐ์น˜๋ฉด์„œ ์ ์ง„์ ์œผ๋กœ ์‚ฌ์šฉ๋œ๋‹ค. ๊ฐ ํ”ฝ์…€์€ ์ฐฉ๋ž€์›(circle of confusion)์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์˜ˆ์ธก๋œ ์ตœ๋Œ€ ํ๋ฆผ ์ •๋„์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ์ตœ์ข… ๋ Œ๋”๋ง ํŒจ์Šค๋ฅผ ๊ฐ–๋Š”๋‹ค. ์ด ๊ธฐ๋ฒ•์€ ๊ฑฐ๋ฆฌ์— ๋”ฐ๋ฅธ ํ”ผ์‚ฌ๊ณ„ ์‹ฌ๋„ ํšจ๊ณผ์˜ ํ๋ฆผ ์ •๋„์— ๋”ฐ๋ผ ๊ฐ ํ”ฝ์…€์— ๋‹ค๋ฅธ ๊ฐœ์ˆ˜์˜ ๋ Œ์ฆˆ ์ƒ˜ํ”Œ์„ ์ ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฐ€์†ํ™” ๋ฐฉ๋ฒ•์€ ๋ถˆํ•„์š”ํ•œ ๋ Œ์ฆˆ ์ƒ˜ํ”Œ๋ง์„ ์ค„์ด๊ณ  GPU์˜ ์บ์‹œ(cache) ์ ์ค‘๋ฅ ์„ ๋†’์—ฌ ์ง์ ‘ ๋ณผ๋ฅจ ๋ Œ๋”๋ง์—์„œ ์ƒํ˜ธ์ž‘์šฉ์ด ๊ฐ€๋Šฅํ•œ ํ”„๋ ˆ์ž„ ์†๋„๋กœ ํ”ผ์‚ฌ๊ณ„ ์‹ฌ๋„ ํšจ๊ณผ๋ฅผ ๋ Œ๋”๋ง ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค. ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•œ ์‹คํ—˜์—์„œ ์ œ์•ˆํ•œ ๋ฐฉ๋ฒ•์€ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์‚ฌ์‹ค์ ์ธ ํ”ผ์‚ฌ๊ณ„ ์‹ฌ๋„ ํšจ๊ณผ๋ฅผ ์ƒ์„ฑํ–ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฒฐ๊ณผ๋Š” ์šฐ๋ฆฌ์˜ ๋ฐฉ๋ฒ•์ด ์˜คํ”„๋ผ์ธ ์ด๋ฏธ์ง€ ํ•ฉ์„ฑ ๋ฐฉ๋ฒ•๊ณผ ์œ ์‚ฌํ•œ ํ’ˆ์งˆ์˜ ํ”ผ์‚ฌ๊ณ„ ์‹ฌ๋„ ํšจ๊ณผ๋ฅผ ์ƒ์„ฑํ•˜๋ฉด์„œ ์ง์ ‘ ๋ณผ๋ฅจ ๋ Œ๋”๋ง์˜ ๊ธฐ์กด ํ”ผ์‚ฌ๊ณ„ ์‹ฌ๋„ ๋ Œ๋”๋ง ๋ฐฉ๋ฒ•๋ณด๋‹ค ์ตœ๋Œ€ 12๋ฐฐ๊นŒ์ง€ ๋น ๋ฅด๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์ค€๋‹ค.CHAPTER 1 INTRODUCTION 1 1.1 Motivation 1 1.2 Dissertation Goals 5 1.3 Main Contributions 6 1.4 Organization of Dissertation 8 CHAPTER 2 RELATED WORK 9 2.1 Depth of Field on Surface Rendering 10 2.1.1 Object-Space Approaches 11 2.1.2 Image-Space Approaches 15 2.2 Depth of Field on Volume Rendering 26 2.2.1 Blur Filtering on Slice-Based Volume Rendering 28 2.2.2 Stochastic Sampling on Volume Ray Casting 30 CHAPTER 3 DEPTH OF FIELD VOLUME RAY CASTING 33 3.1 Fundamentals 33 3.1.1 Depth of Field 34 3.1.2 Camera Models 36 3.1.3 Direct Volume Rendering 42 3.2 Geometry Setup 48 3.3 Lens Sampling Strategy 53 3.3.1 Sampling Techniques 53 3.3.2 Disk Mapping 57 3.4 CoC-Based Multi-Pass Rendering 60 3.4.1 Progressive Lens Sample Sequence 60 3.4.2 Final Render Pass Determination 62 CHAPTER 4 GPU IMPLEMENTATION 66 4.1 Overview 66 4.2 Rendering Pipeline 67 4.3 Focal Plane Transformation 74 4.4 Lens Sample Transformation 76 CHAPTER 5 EXPERIMENTAL RESULTS 78 5.1 Number of Lens Samples 79 5.2 Number of Render Passes 82 5.3 Render Pass Parameter 84 5.4 Comparison with Previous Methods 87 CHAPTER 6 CONCLUSION 97 Bibliography 101 Appendix 111Docto

    Network-Wide Monitoring And Debugging

    Get PDF
    Modern networks can encompass over 100,000 servers. Managing such an extensive network with a diverse set of network policies has become more complicated with the introduction of programmable hardwares and distributed network functions. Furthermore, service level agreements (SLAs) require operators to maintain high performance and availability with low latencies. Therefore, it is crucial for operators to resolve any issues in networks quickly. The problems can occur at any layer of stack: network (load imbalance), data-plane (incorrect packet processing), control-plane (bugs in configuration) and the coordination among them. Unfortunately, existing debugging tools are not sufficient to monitor, analyze, or debug modern networks; either they lack visibility in the network, require manual analysis, or cannot check for some properties. These limitations arise from the outdated view of the networks, i.e., that we can look at a single component in isolation. In this thesis, we describe a new approach that looks at measuring, understanding, and debugging the network across devices and time. We also target modern stateful packet processing devices: programmable data-planes and distributed network functions as these becoming increasingly common part of the network. Our key insight is to leverage both in-network packet processing (to collect precise measurements) and out-of-network processing (to coordinate measurements and scale analytics). The resulting systems we design based on this approach can support testing and monitoring at the data center scale, and can handle stateful data in the network. We automate the collection and analysis of measurement data to save operator time and take a step towards self driving networks
    • โ€ฆ
    corecore