The Infona portal uses cookies, i.e. strings of text saved by a browser on the user's device. The portal can access those files and use them to remember the user's data, such as their chosen settings (screen view, interface language, etc.), or their login data. By using the Infona portal the user accepts automatic saving and using this information for portal operation purposes. More information on the subject can be found in the Privacy Policy and Terms of Service. By closing this window the user confirms that they have read the information on cookie usage, and they accept the privacy policy and the way cookies are used by the portal. You can change the cookie settings in your browser.
Lack of effective usage examples in API documents has been proven to be a great obstacle to API learning. To deal with this issue, several approaches have been proposed to automatically extract usage examples from client code or related web pages, which are unfortunately not available for newly released API libraries. In this paper, we propose a novel approach to mining API usage examples from test...
Digital library is a digital information resource management system. The article introduces the basic idea and functions of data mining technology, expounds the roles of the technology in library information construction, and states how to apply the technology to the library information construction. To solve the problems in the traditional service system of digital library, such as deficiency of...
CUDA facilitates the development of General Purpose computing on Graphics Processing Units (GPGPU), however, its complex memory system, thread-level structure, and data transmission control between memories have brought great challenges for programming on GPU. In order to facilitate the development of parallel programs on GPU and reuse existing sequential codes, in this paper we propose a novel directive...
In this paper, an eXtended Stepwise Dimension Reduction approach (XSDR) to evolutionary design of relatively large combinational logic circuits is proposed. In our previous work, a Stepwise Dimension Reduction approach (SDR) is introduced. The SDR divides a circuit into several layers. The layers are evolved one after another. However, some layers are difficult to be evolved. The XSDR improves the...
To strengthen systems against code injection attacks, the write or execute only policy (W??X) and address space layout randomization (ASLR) are typically used in combination. The former separates data and code, while the latter randomizes the layout of a process. In this paper we present a new attack to bypass W??X and ASLR. The state-of-the-art attack against this combination of protections is based...
Parameterized unit test recently gains a lot of attention as it saves testing cost and is more efficient in term of code coverage. We present a framework for running parameterized unit tests (PUT) based on Java PathFinder (JPF) and JUnit. Our approach bases on model checking and symbolic execution of JPF for generating standard unit tests. As a result, we achieve high structural and path coverage...
There are two popular parallel I/O programming styles used by modern scientific computational applications: unique-file and shared-file. Unique-file I/O usually gives satisfactory performance, but its major drawback is that managing a large number of files can overwhelm the task of post-simulation data processing. Shared-file I/O produces fewer files and allows arrays partitioned among processes to...
Graph theory is the theoretical fundamental of network technologies. This paper reports an investigation of stability issues of the network technologies based on the graph theory. It also presents solutions of the geodetic number of graph Cm times Cn. There are many parameters which can measure to some extent the robustness of an interconnection network with respect to link failures, such as domination...
A parallel skeleton library is a collection of parallel computations that abstract generic and recurring patterns within parallel programs and conceal parallel behaviors as skeletons. It enables users to develop parallel programs as if they were sequential ones by composing suitable skeletons. However, many existing parallel skeleton libraries for distributed environments do not take into account...
High level synthesis (HLS) is the field of transforming a high level programming language, such as C, into a register transfer level(RTL) description of the design. In HLS, binary synthesis is a method for synthesizing existing compiled applications for which the source code is not available. One of the advantages of FPGAs over software is the availability of multiple memory banks. Until now, binary...
This paper analyses the expression of digital symbol and calculation of number system, and develops 2n based number system whose digital symbol can be easily expressed with built-in data type variable in high-level programming language. By researching the characteristic of scalable queue templates in Visual C++ template library, it gives the implementation scheme of unlimited integer class based on...
This paper presents our current research efforts on efficient Java communication libraries over InfiniBand. The use of Java for network communications still delivers insufficient performance and does not exploit the performance and other special capabilities (RDMA and QoS) of high-speed networks, especially for this interconnect. In order to increase its Java communication performance, InfiniBand...
Linear algebra algorithms are fundamental to many computing applications. Modern GPUs are suited for many general purpose processing tasks and have emerged as inexpensive high performance co-processors due to their tremendous computing power. In this paper, we present the implementation of singular value decomposition (SVD) of a dense matrix on GPU using the CUDA programming model. SVD is implemented...
Parallelizing existing sequential programs to run efficiently on multicores is hard. The Java 5 package java.util.concurrent (j.u.c.) supports writing concurrent programs. To use this package, programmers still need to refactor existing code. This is tedious, error-prone, and omission-prone. This demo presents our tool, CONCURRENCER, which enables programmers to refactor sequential code into parallel...
This paper introduces UniFi, a tool that attempts to automatically detect dimension errors in Java programs. UniFi infers dimensional relationships across primitive type and string variables in a program, using an inter-procedural, context-sensitive analysis. It then monitors these dimensional relationships as the program evolves, flagging inconsistencies that may be errors. UniFi requires no programmer...
Several optimization alternatives are presented for legacy Fortran 77 scientific programs, each one with a quantitative characterization in terms of performance gain. Initially, sequential optimization is focused on the analysis of Level 3 BLAS (basic linear algebra subroutines) utilization, since BLAS have several performance optimized implementations. Also, the Fortran 90/95 array notation is used...
Microarray technology has been used extensively for high throughput gene expression studies. Many bioinformatics tools are available for analysis of microarray data. In the data mining process, it is important to be goal oriented so that a set of proper tools can be assembled for the targeted knowledge discovery process. In this paper, we tackle this issue by using a microarray dataset from Brassica...
Multicore machines are becoming common. There are many languages, language extensions and libraries devoted to improve the programmability and performance of these machines. In this paper we compare two libraries, that face the problem of programming multi-cores from two different perspectives, task parallelism and data parallelism. The Intel threading building blocks (TBB) library separates logical...
This tutorial describes a step-by-step procedure for programming a Macintosh Nvidia GPU. General scientific programmers with some C knowledge can get started in parallel processing application development with relative ease.
In its most general form, an attack signature is a program that can correctly determine if an input network packet sequence can successfully attack a protected network application. Filter rules used in firewall and network intrusion prevention systems (NIPS) are an abstract form of attack signature. This paper presents the design, implementation, and evaluation of an automated attack signature generation...
Set the date range to filter the displayed results. You can set a starting date, ending date or both. You can enter the dates manually or choose them from the calendar.