Oszacowanie wydajności optymalizacji przy wykorzystaniu liniowej reprezentacji pośredniej kodu Streszczenie. W niniejszej pracy omówiono i porównano dwie reprezentacje pośrednie kodu. Szczególny nacisk położono na liniową reprezentację pośrednią w kontekście maszyny wirtualnej Mono. Przedstawiono wybrane metody optymalizacji kodu i pokazano wpływ poszczególnych reprezentacji pośrednich na kwestie wydajności wykonania i rozmiaru kodu.
EN
The two intermediate representations are discussed and broadly compared. Particular emphasis has been placed on linear intermediate representation using Mono Virtual Machine. Selected code optimization methods are presented and the impact of several intermediate representations is examined considering execution performance and generated native code size.
Niniejszy artykuł traktuje o implementacji dodatkowych funkcjonalności w środowisku ImageJ na przykładzie wybranego algorytmu przetwarzania obrazów. Środowisko to jest bardzo popularne wśród naukowców, szczególnie neurobiologów jako referencyjna aplikacja do analizy obrazów preparatów mikroskopowych. W artykule przedstawiono wybrane aspekty charakterystyki prezentowanego środowiska, skupiono się zaś szczególnie na sposobie wdrażania nowych funkcjonal-ności na przykładzie implementacji algorytmu statystycznej dominacji. Rozważono szczegóły wydajnościowe rozwiązania wraz z dyskusją metodyki zrównoleglenia, przedstawiając wyniki eksperymentalne.
EN
This article presents an implementation of additional functionality in the ImageJ environment for selected image processing algorithm. This environment is very popular among scientists, especially neuroscientists as a reference application for the analysis of images of microscopic images. The article presents some aspects of the characteristics of presented environment, and focuses particularly on ways of implementing new functionalities as an example the statistical dominance algorithm implementation. The details of performance solutions with discussion of the parallelization methodology, including experimental results, are considered.
W niniejszym artykule przedstawiono sposoby implementacji czasochłonnych procedur numerycznych dla środowiska Matlab. Rozważono możliwość skompilowania kodu napisanego w języku C do pliku wykonywalnego mex, skompilowanie kodu źródłowego w języku C# do biblioteki dll i wywołanie z niej funkcji w środowisku Matlab, a także wykorzystanie wtyczek programowych dla środowiska ImageJ. Powyższe implementacje odniesiono do równoważnego algorytmu stworzonego w kodzie skryptowym Matlab. Przetestowano dwa warianty: dla obliczeń jednowątkowych i równoległych. Badania przeprowadzono implementując algorytm statystycznej dominacji, służący do preprocessingu obrazów. Otrzymane wyniki przedstawiono w tabelach i opatrzono komentarzem.
EN
This article shows methods of time-consuming numerical procedures implementation for the Matlab environment. There are sonsidered possibilities to compile code written in C and the executable file mex, compile the source code in C# dll and call it in Matlab, and the use of plug-ins for ImageJ environment. These implementations were referred to the equivalent algorithm created in MATLAB scripting code. There were tested two variants: for the calculation of single-threaded and parallel. The study was conducted by implementing the algorithm of statistical dominance for preprocessing images. The results are shown in the tables, and annotated.
Artykuł ten skupia się na wybranych sposobach optymalizacji kodu, przeprowadzanych z użyciem techniki pojedynczego statycznego przypisania (SSA) ze szczególnym uwzględnieniem kontekstu najpopularniejszych obecnie środowisk maszyn wirtualnych. Przedstawiono podstawowe metody optymalizacji kodu, które opierają się na technice przekształcenia kodu do wspomnianej postaci. Zaprezentowano metodę konstrukcji grafów przepływu sterowania oraz skupiono się na możliwości jej wykorzystania do redukcji obliczeń. Na podstawie przykładowego kodu przedstawiono możliwość optymalizacji SSA w wiodących systemach maszyn wirtualnych Java VM, .NET Framework i Mono. Eksperymentalnie oceniono wpływ ręcznego wykonania optymalizacji przez programistę w odniesieniu do optymalizacji wykonywanej automatycznie przez kompilator JIT.
EN
This article focuses on some ways to optimize the code, carried out us-ing the technique of static single assignment (SSA) with particular emphasis on the context of today's most popular virtual machine environments. The basic methods of code optimization, which are based on the technique of recasting the code to that form are presented. Also a method of design control flow graphs and focused on the possibility of its use to reduce the calculations is shown. Based on the example code, the possibility of optimizing the SSA in leading systems, virtual machines Java VM, the .NET Framework and Mono was considered. Experimentally the impact of manual performance optimization by the programmer in relation to the optimization per-formed automatically by the JIT compiler was carried out.
W niniejszym artykule przedstawiono zagadnienie wyznaczania średniej charakterystyki poruszania się karetek po mieście Kraków z wykorzystaniem programu MapPoint i na podstawie danych rzeczywistych. Przedstawiono opis danych historycznych oraz metodykę rozwiązywania problemu odwrotnego, która pozwala na dobór charakterystyki przejazdu pojazdów z najlepszym przybliżeniem modelu rzeczywistego. Zaprezentowano dyskusję wyników. Omawiane zagadnienie jest częścią systemu wspomagania podejmowania decyzji dla pracowników ratownictwa medycznego, powstałego przy współpracy Małopolskiego Urzędu Wojewódzkiego oraz Akademii Górniczo-Hutniczej im. Stanisława Staszica w Krakowie.
EN
The article contains elaboration of medium characteristics of moving ambulances all over the city Cracow using the MapPoint program based on real data. The objective of the analysis is to determine the model of speed ambulances moving around the city. It is a part of the assisting system for emergency medical workers, resulting in co-operation with Małopolska Provincial Office in Krakow and AGH University of Science and Technology.
6
Dostęp do pełnego tekstu na zewnętrznej witrynie WWW
The problem discussed in this article covers the issue of the generation and computational complexity of an arrival time map of emergency vehicles (ambulances). Finding the optimal (fastest) route between two points is a complex and time-consuming task. Moreover, the discussed issues are identical to the problems faced by dispatchers from Malopolska Medical Emergency. Therefore, the aim was to develop algorithms to reduce time calculations, based on the reduction of their number only to the points where ambulances are able to reach within the specifi ed time. There were compared three types of algorithms, taking into account their time and computational complexity. The result of the research was to identify algorithms, which depending on the adopted criteria allow to achieve optimal results.
PL
Problemem poruszanym w niniejszym artykule jest czas, w jakim obliczana jest kompletna mapa czasów dojazdów pojazdów ratunkowych (ambulansów) dla zadanej siatki. Znalezienie optymalnej (najszybszej) trasy między dwoma punktami jest problemem złożonym i czasochłonnym. Co więcej, poruszane zagadnienia wynikają z potrzeb i problemów, z którymi zmagają się dyspozytorzy Małopolskiego Ratownictwa Medycznego. Wobec tego, intencją autorów było opracowanie metod pozwalających na skrócenie czasu wykonywania obliczeń, bazując na redukcji ich liczby wyłącznie do punktów, do których ambulans jest w stanie dotrzeć w zadanym czasie. Porównano trzy typy algorytmów, uwzględniając ich złożoność czasową i obliczeniową. W rezultacie wskazano metody, które – w zależności od przyjętego kryterium – pozwalają osiągnąć optymalne wyniki.
Artykuł stanowi analizę możliwości wykorzystania strumieniowych baz danych w konstrukcji systemów nadzorowania stanu obwałowań przeciwpowodziowych. Rozpatrzono cechy charakterystyczne budowy systemów opartych na strumieniowych bazach danych, szczególnie w kontekście sieci czujników. Zwrócono uwagę na zagadnienie składowania danych oraz ich przetwarzania. Zamieszczony przegląd rozwiązań uwypukla projekty stworzone specjalnie dla sieci czujników. Przeanalizowano aktualność aplikacji systemów strumieniowych baz danych i ich dostępność w aspekcie projektów akademickich.
EN
The article is an analysis of the possibilities of using streaming data bases in the design of systems monitoring the status of flood embankments. The authors considered a construction of systems based on the streaming data bases in the context of sensor networks. There is an attention paid to the issue of data storage and processing drawn. Overview of the solutions featuring designs created especially for sensor networks is presented. There are analyzed states of streaming systems database applications and their availability in terms of academic projects.
Cell number, density and volume of white and gray matter in brain structures are not constant values. Cellular alterations in brain areas might coincide with neurological and psychiatric pathologies as well as with changes in brain functionality during selection experiments, pharmacological treatment or aging. Several softwares were created to facilitate quantitative analysis of brain tissues, however results obtained from these softwares require multiple manual settings making the computing process complex and time-consuming. This study attempts to establish half automated software for fast, ergonomic and an accurate analysis of cellular density, cell number and cellular surface in morphologically different brain areas: cerebral cortex, pond and cerebellum. Images of brain sections of bank voles stained with standard cresyl-violet technique (Nissl staining), were analyzed in designed software. Results were compared with other commercially available tools regarding number of steps to be done by user and number of parameters possible to measure.
9
Dostęp do pełnego tekstu na zewnętrznej witrynie WWW
Spatial databases are commonly used to generate 2-dimensional (2D) and 3-dimensional (3D) topographic models. Mentioned models sometimes also contain information about geological layers. In that case, analysing data provides extra benefits and facilities that are desirable in presentation of complex and multilayer data (Chrobak 2009, Gotlib 2009). The possibility of storing and processing the geometry, which is saved in a standardized vector form, is the greatest advantage of spatial databases. The standards (technical documents that detail interfaces or encodings) were presented by Open Geospatial Consortium (OGC) (Open Geospatial Consortium 2014). Geometry of the objects is presented as points, lines, polygons and theirs collections. The standards also include specification about 3D data representation.Those data could be used to describe and create geological models. Another advantage of spatial databases is the possibility of adding own extensions without recompilation of all database source code. The extensions are added as a compiled library with functions, which could be written in a selected programming language (Bac-Bronowicz 2010, Lupa 2012, Lisowski et al. 2013). This paper focuses on the possibility to extend PostgreSQL database using functions that are written on the base of open source Computational Geometry Algorithms Libary (CGAL) project (Aptekorz et al. 2012, CGAL 2014). The extension library contains algorithms that are used in computer graphic and visualization of geometric data. The library was written in C++ language according to the objective-programming paradigm. Presented solution adds function of Delaunay triangulation, which is not implemented in PostGIS (Lisowski et al. 2013). This tool allows to generate Triangulated Irregular Network (TIN) surfaces of geological layers in a simple and functional way. 3D terrain model is created using information from spatial database (2D and 3D objects). In the next step, TIN model is generated, which approximates the modelled geological layers by a network of the triangles (tangent edges). Interoperability and unified data edition was achieved due to using of triangles (represented by triangles which are polygon type, vanished points and lines objects). Nevertheless, generating of 3D models from 2D data with parameter, which would properly represent a surface and terrain layers, is not a trivial task.
In this paper, the minimization of total weighted completion time (total cost) for asynchronous transmission in distributed systems is discussed. Special attention has been paid to the problem of message scheduling on the sender side. Messages to be sent form a queue, therefore the order in which they are to be sent has to be set. Scheduling algorithms can be chosen to optimize scheduling criteria such as total completion time or total weighted completion time. The message scheduling problem becomes complicated considerably when the transmitted data stream between the sender and the receiver is formed into packets. TheWSPT (Weighted Shortest Processing Time) scheduling rule, which orders messages according to non-decreasing length and weight ratios has been proven to be non-optimal. It has been demonstrated that the problem of minimizing the total weighted completion time is NP-hard. Here, we propose heuristic algorithms for scheduling messages and experimentally evaluate the performance of these scheduling algorithms.
Niniejszy artykuł porusza temat generalizacji obiektów geometrycznych w bazach danych przestrzennych, na podstawie metod morfologii matematycznej. Zbadano wpływ przykładowych operacji, tj.: erozji, dylatacji, otwarcia i zamknięcia, na stopień szczegółowości danych oraz efektywności czasowej zapytań. Wykazano, iż metody morfologii matematycznej w połączeniu z algorytmami redukcji wierzchołków mogą być traktowane z powodzeniem jako nowatorskie podejście w procesie optymalizacji baz danych przestrzennych.
EN
This article describes the issue of geometric objects generalization in spatial databases with methods of mathematical morphology. The authors studied the impact of exemplary operations, i.e.: erosion, dilatation, opening, closing on the level of the data details and time efficiency of queries. It has been shown that the mathematical morphology methods can be successfully treated as a novel approach in spatial databases optimization.
Artykuł opisuje testy wydajności trzech popularnych wolno dostępnych systemów baz danych: PostgreSQL, MySQL oraz Firebird. Testami objęto wpływ liczby rdzeni w procesorze na wydajność pracy każdej bazy. Testy Przeprowadzono przez pomiar czasu wykonania pojedynczych zapytań DML o różnym stopniu skomplikowania. Dodatkowo przetestowano obciążenia przez wielokrotne zadanie tego samego zapytania.
EN
This article presents tests of three popular, public domain, database systems: PostgreSQL, MySQL and Firebird. We are examine the impact on performance of each database the number of cores in the processor. The tests were performed by measuring the execution time of individual DML queries of varying complexity. In addition, the load test was performed by the single query executed multiple times.
System PostGIS wykorzystywany jest nie tylko do magazynowania i udostępniania danych, ale także dostarcza podstawowe narzędzia do ich analizy i przetwarzania. Przeprowadzanie bardziej zaawansowanych analiz wymaga jednak wykonania obliczeń poza bazą danych. Celem projektu jest poszerzenie możliwości przetwarzania danych przestrzennych po stronie bazy danych, poprzez wykorzystanie funkcji udostępnianych przez bibliotekę CGAL. W pracy zaproponowana została konstrukcja takiego rozwiązania na przykładzie implementacji metody triangulacji Delaunay.
EN
The PostGIS is used not only for the storage and sharing of data but also it enables basic analysis of spatial data. Unfortunately performing more sophisticated analysis requires calculations outside the database. The presented project is aimed at the extension of the functionalities for spatial data in the database using the functions provided by the CGAL library. The construction of such solution was proposed on the basis of the implementation of the Delaunay triangulation.
Poniższy artykuł porusza tematykę możliwości wydobywania wiedzy zawartej w obrazach rastrowych, magazynowanych w bazie danych. Zaproponowano autorskie podejście do możliwości konstrukcji systemu wspomagającego proces eksploracji takich danych. Omówione zostały aspekty konstrukcyjne oraz implementacyjne.
EN
The following article deals with possibilities for retrieving information from raster images stored in a database. An author’s approach for the possibility of a support system construction for the process of exploration of such data is proposed. The following article describes construction and implementation aspects.
Niniejszy artykuł porusza temat optymalizacji zapytań w bazach danych przestrzennych. Autorzy, jako główny nurt rozważań, przyjęli optymalizację regułową, która pozwala przyśpieszyć wykonywanie zapytań na etapie ich tworzenia. Efektem badań są spostrzeżenia w postaci proponowanych reguł optymalizacji, których efektywność została sprawdzona eksperymentalnie. Zaproponowano trzy metody dekompozycji zapytań do postaci mniej czasochłonnych obliczeniowo. Pierwszą z nich jest zastąpienie funkcji przestrzennych w warunkach wyszukiwania operatorami logicznymi. W drugim przypadku do dekompozycji wykorzystano własność łączności w kontekście funkcji sumy. Trzecie rozpoznanie dotyczy własności łączności w aspekcie funkcji części wspólnej.
EN
This article addresses how to optimize queries in spatial databases. Authors as mainstream considerations adopted to optimize adjustable speed performance which allows queries on the stage of their development. The result of the study are the observations in the form of proposed rules of optimization, where the effectiveness is verified experimentally. Proposed three methods for decomposition of queries into a less time-consuming computationally. The first is to replace spatial functions in a Boolean search. In the second case, the decomposition property of communication used in the context of the function sum. The third property concerns the identification of communication in terms of joint function.
W pracy tej zostały przedstawione dwie technologie do obliczeń rozproszonych - Apache Hadoop oraz XtreemOS. Pierwsza z nich jest szeroko stosowana dla usług sieciowych i infemetowych. Druga technologia oferuje możliwość rozsyłania zadań pomiędzy węzły klastra, z uwzględnieniem wymaganych zasobów. Technologie te różnią się budową, co powinno być uwzględnione podczas wyboru dla danego problemu obliczeniowego oraz podczas implementacji.
EN
In ths paper two technologies for distributed computations are presented - Apache Hadoop and XtreemOS. The first of them is widely used for web services. Its main purpose is an analysis of large data. The second one is developed to distribute tasks between cluster nodes regarding the available resources. This technologies differ in construction context, which should be considered when applied.
In this paper the quality and analysis of the computed tomography scan sets are presented in the context of creating a 3DD model of a heart for the ultrasonography simulator. Data was collected during regular patients examination, using various equipment and technique, therefore not every set has required quality. CT data can be fast characterized with histogram that can show if the brightness ranges of objects (heart structures) are selective. This makes CT data usable for simulation by applying a transform function on the CT images to produce ultrasonographylike images. The aim is to use a PACS system of Hospital, which is the source of data. Therefore a proper technique and system for analysis is needed.
18
Dostęp do pełnego tekstu na zewnętrznej witrynie WWW
The evolution of computer technology has created possibility to build digital catalog of geological outcrops cards - the geological data bank. In the recent times, the milestone event in the computer cartography was the release of Google Maps service (2005) and more accurately - geoservices, called web map services. These services were based on software (both commercial and open source) called map servers (Nowacki & Opach, 2009). One of these map servers is "Geoportal" - http://geoportal.gov.pl, acting as a broker service, that provides the digital cartographic data and spatial services for the users. Another interesting spatial service - Central Geological Database was made by Polish Geological Institute -http://baza. pgi.gov.pl/. The appropriate collection and processing of data, collected as a result of geological research is a non-trivial task due to their volume and the multiplicity of formats in which they are delivered. Therefore geological databases are most miscellaneous and comprehensive, which means that they are a valuable source of information during performing of the analysis. Furthermore, data in themselves have no value, only systematization and appropriate interpretation by the user can make these data useful. To achieve this goal, spatial databases are being used, because in addition to the information received as a result of the analysis, they also have a spatial reference. This data structure forms the base layer of Geographic Information Systems (GIS) and is present in applications for analyzing and visualization of the processing of geological data results One of this application is the Internet-based system "GeoOutcrops", which enable collecting and analyzing data collected in the geological outcrops. GeoOutcrops is a universal database system of geological outcrops. It was created in Department of Geoinformatics and Applied Computer Science in Faculty of Geology,Geophysics and Environmental Protection, AGH University of Science and Technology. The GeoOutcrops database is processed, refreshed and expanded with new technical solutions version, of the geological service "GeoKarpaty 2". Similary to the GeoKarpaty2, the GeoOutcrops service is designed to store data of the Polish Flysch Carpathians. It can also be adapted to store data of entire Carpathians. In contrast to previous version, GeoOutcrops is a open source system, with better user interface usability and user friendly template. GeoOutcrops is a three-tier system model, which consists of: data tier, business tier and presentation tier. The data tier represents MySQL database with spatial extension - MySQL Spatial. The business tier of system, which contains the entire functional structure of the service, has been programmed using PHP language with Kohan's Framework 3.0 and PDO library. Interaction with the user supports JavaScript with the JQuery library. The presentation tier, including the user interface, is made with XHTML and CSS languages. The web site has been developed in accordance with the current standards, both in terms of structure, the user interface and aesthetics. The whole thing is the result of a thorough analysis of requirements and capabilities, aimed at creating a geoservice dedicated to users associated with the geological sciences. Moreover, the system also includes the implementation of Google Maps API and allows specifying the location of the various outcrops on the map.
Niniejszy artykuł opisuje zagadnienie generalizacji obiektów przestrzennych w bazach danych przestrzennych. Wskazano przykładowe operacje (suma powierzchni obiektów, powierzchnia sumy obiektów), w których redukcja redundantnych węzłów zdecydowanie przyśpiesza zapytanie. Naświetlono zagadnienie generalizacji obiektów geometrycznych. Udowodniono NP-trudność operacji redukcji największej liczby węzłów przy zadanej dokładności.
EN
This article describes the issue of generalization of spatial objects in spatial databases. There are presented examples of operations (the sum of surface objects, surface objects total) in which the reduction of redundant nodes strongly accelerates query. Highlighting the issue of generalization of geometric objects. It has been proven NP-difficulty of the operation the largest reduction in the number of nodes at a given accuracy.
Stale wzrastające zastosowanie baz danych przestrzennych we współczesnych systemach informacyjnych wiąże się z przetwarzaniem dużej ilości danych. Problemem jest także mnogość formatów takich danych. W takim kontekście warto zwrócić uwagę na hurtownie danych dedykowane danym przestrzennym. Niniejszy artykuł opisuje przykładowy problem łączenia i przetwarzania danych, które mogą pochodzić z różnych źródeł. Jako środowiska wybrano wolnodostępne rozwiązania Talend Open Studio i GeoKettle.
EN
Steadily increasing use of spatial databases in modern information systems is associated with processing large amounts of data. Another problem is the multitude of formats for such kind of data. In this context it is worthwhile to draw attention to a dedicated data warehouse domain. This article describes an example of the problem of combining and processing data from different sources. Talend Open Studio and GeoKettle are selected as public domain solutions.
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.