National Repository of Grey Literature 93 records found  1 - 10nextend  jump to record: Search took 0.00 seconds. 
Syntax-driven duplicate-code detection
Saksa, Jakub ; Bednárek, David (advisor) ; Kopecký, Michal (referee)
Duplicate code occurs in source files for different reasons. In many cases the motivation for copying the code is laziness of a programmer, or an attempt to use an alien source code. Over the years, multiple methods for detection of the duplicate source code have been developed. Approaches vary in the ways they analyze the code, focusing on different representations of the program. Methods based on the analysis of the syntactic properties of the source code often use abstract syntax trees. By examining the tree representation instead of the textual representation of the code, these methods are able to detect duplicate code that underwent formatting changes as well as changes to the names of identifiers. Duplicate code fragments are discovered by identifying the subtrees of the same shape. After the suspicious parts of the tree are identified, further examination of AST properties determines to what extent the code was copied. In this work we develop a system for duplicate code detection based on AST comparison.
High-performance exploration and querying of selected multi-dimensional spaces in life sciences
Kratochvíl, Miroslav ; Bednárek, David (advisor) ; Glaab, Enrico (referee) ; Svozil, Daniel (referee)
This thesis studies, implements and experiments with specific application-oriented approaches for exploring and querying multi-dimensional datasets. The first part of the thesis scrutinizes indexing of the complex space of chemical compounds, and details a design of high-performance retrieval system for small molecules. The resulting system is then utilized within a wider context of federated search in heterogeneous data and metadata related to the chemical datasets. In the second part, the thesis focuses on fast visualization and exploration of many-dimensional data that originate from single- cell cytometry. Self-organizing maps are used to derive fast methods for analysis of the datasets, and used as a base for a novel data visualization algorithm. Finally, a similar approach is utilized for highly interactive exploration of multimedia datasets. The main contributions of the thesis comprise the advancement in optimization and methods for querying the chemical data implemented in the Sachem database cartridge, the federated, SPARQL-based interface to Sachem that provides the heterogeneous search support, dimensionality reduction algorithm EmbedSOM, design and implementation of the specific EmbedSOM-backed analysis tool for flow and mass cytometry, and design and implementation of the multimedia...
Kampa: an experimental programming language
Rozsypal, Lukáš ; Bulej, Lubomír (advisor) ; Bednárek, David (referee)
Kampa is a general-purpose programming language. It is imperative, but influenced by functional programming. Its distinguishing features include value types with a concise tuple syntax, immutability that applies recursively, and custom named operators. Clo- sures and first-class functions are a matter of course. Thanks to dependent types, the size of an array may be bound to any immutable variable or field. Arrays can be embed- ded in other data structures. This, in conjunction with dependent types, allows almost arbitrary memory layouts. In addition to the specification, this thesis also provides a proof-of-concept implementation built on top of Truffle. 1
Performance assessment of cloud applications
Sándor, Gábor ; Bureš, Tomáš (advisor) ; Bednárek, David (referee)
Modern CPS and mobile applications like augmented reality or coordinated driving, etc. are envisioned to combine edge-cloud processing with real-time requirements. The real-time requirements however create a brand new challenge for cloud processing which has traditionally been best-effort. A key to guaranteeing real-time requirements is the understanding of how services sharing resources in the cloud interact on the performance level. The objective of the thesis is to design a mechanism which helps to categorize cloud applications based on the type of their workload. This should result in specification of a model defining a set of applications which can be deployed on a single node, while guaranteeing a certain quality of the service. It should be also able to find the optimal node where the application could be deployed.
A programming language presented in graphics
Sobkuliak, Roman ; Bednárek, David (advisor) ; Parízek, Pavel (referee)
The goal of this thesis is to create a programming language with characters and key- words substituted with images and animations (GIFs). We build a web IDE and a client- side interpreter for this language using modern web technologies including WebWorkers, TypeScript and React. The IDE features code-stepping with information about current location in the source code, environment variables and a call stack. Additionally, there is a support for storing programs on the server and loading them later. The purpose of the language is educational, e.g., to be used in creative games at programming camps for elementary and high schoolers. 1
Latency aware deployment in the edge-cloud environment
Filandr, Adam ; Hnětynka, Petr (advisor) ; Bednárek, David (referee)
The goal of this thesis is to propose a layer on top of edge-cloud, in order to provide soft real-time guarantees on the execution time of applications. This is done in order to satisfy the soft-real time requirements set by the developers of latency-sensitive applications. The proposed layer uses a predictor of execution time, in order to find combinations of processes with, which satisfy the soft real- time requirements when collocated. To implement the predictor, we are provided with information about the resource usage of processes and execution times of collocated combinations. We utilize similarity between the processes, cluster analysis, and regression analysis to form four prediction methods. We also provide a boundary system of resource usage used to filter out combinations exceeding the capacity of a computer. Because the metrics indicating the resource usage of a process can vary in their usefulness, we also added a system of weights, which estimates the importance of each metric. We experimentally analyze the accuracy of each prediction method, the influence of the boundary detection system, and the effects of weights. 1
Taxi service back-end
Březina, Lukáš ; Bureš, Tomáš (advisor) ; Bednárek, David (referee)
Nowadays services like Uber start to surpass taxi companies in comfort of transport. In this thesis, we create a back-end part of an application for taxi companies in smaller towns. This application provides an interface for creating and managing orders, employees, customers, and vehicles. As part of the system, we constructed order scheduler which calculates the order duration, estimated time of arrival and distributes the order between available drivers automatically. Overall the application increases the taxi company's efficiency and offers users a more comfortable experience.
Accelerating structure search in small-molecule databases
Kratochvíl, Miroslav ; Bednárek, David (advisor) ; Hoksza, David (referee)
Structure search is one of the valuable capabilities of small-molecule databases. Available chemical cartridges typically provide acceptable search performance for processing user queries, but do not scale satisfactorily with dataset size. This thesis presents Sachem, a new open-source chemical car- tridge that implements a novel method of substructure search, which em- ploys newly designed fingerprints stored in inverted indexes. The perfor- mance of the method was assessed on datasets that contain tens of mil- lions of molecules. Comparison of the performance to that of other available cartridges revealed improvements in overall search speed, scaling potential and screen-out efficiency. Additionally, the thesis presents an application of Sachem; a SPARQL service that augments existing semantic services by including results of substructure and similarity searches in small-molecule databases. The result offers new possibilities for simpler querying of the interoperable heterogeneous data sources. 1
Procedural code integration in streaming environments
Brabec, Michal ; Bednárek, David (advisor) ; Krall, Andreas (referee) ; Šimeček, Ivan (referee)
Title: Procedural code integration in streaming environments Author: Mgr. Michal Brabec Department: Department of Software Engineering Supervisor: David Bednárek, Ph.D. Abstract: Streaming environments and similar parallel platforms are widely used in image, signal, or general data processing as means of achieving high perfor- mance. Unfortunately, they are often associated with domain specific program- ming languages, and thus hardly accessible for non-experts. In this work, we present a framework for transformation of a procedural code to a streaming ap- plication. We selected a restricted version of the C# language as the interface for our system, because it is widely taught and many programmers are familiar with it. This approach will allow creating streaming applications or their parts using a widely known imperative language instead of the intricate languages specific to streaming. The transformation process is based on the Hybrid Flow Graph - a novel inter- mediate code which employs the streaming paradigm and can be further convert- ed into streaming applications. The intermediate code shares the features and limitations of the streaming environments, while representing the applications without platform specific technical details, which allows us to use well known graph algorithms to work with the...
Analýza paralelizovatelnosti programů na základě jejich bytecode
Brabec, Michal ; Bednárek, David (advisor)
Analysis of automatic program parallelization based on bytecode There are many algorithms for automatic parallelization and this work explores the possible application of these algorithms to programs based on their bytecode or similar intermediate code. All these algorithms require the identification of independent code segments, because if two parts of code do not interfere with one another then they can be run in parallel without any danger of data corruption. Dependence testing is an extremely complicated problem and in general application, it is not algorithmically solvable. However, independences can be discovered in special cases and then they can be used as a basis for application of automatic parallelization, like the use of vector instructions. The first step is function inlining that allows the compiler to analyze the code more precisely, without unnecessary dependences caused by unknown functions. Next, it is necessary to identify all control flow constructs, like loops, and after that the compiler can attempt to locate dependences between the statements or instructions. Parallelization can be achieved only if the analysis discovered some independent parts in the code. This work is accompanied by an implementation of function inlining and code analysis for the .NET framework.

National Repository of Grey Literature : 93 records found   1 - 10nextend  jump to record:
Interested in being notified about new results for this query?
Subscribe to the RSS feed.