Preferencje help
Widoczny [Schowaj] Abstrakt
Liczba wyników

Znaleziono wyników: 31

Liczba wyników na stronie
first rewind previous Strona / 2 next fast forward last
Wyniki wyszukiwania
help Sortuj według:

help Ogranicz wyniki do:
first rewind previous Strona / 2 next fast forward last
EN
A floating point accumulator cannot be obtained straightforwardly due to its pipeline architecture and feedback loop. Therefore, an essential part of the proposed floating point accumulator is a critical accumulation loop which is limited to an integer adder and 16-bit shifter only. The proposed accumulator detects a catastrophic cancellation which occurs e.g. when two similar numbers are subtracted. Additionally, modules with reduced hardware resources for rough error evaluation are proposed. The proposed architecture does not comply with the IEEE-754 floating point standard but it guarantees that a correct result, with an arbitrarily defined number of significant bits, is obtained. The proposed calculation philosophy focuses on the desired result error rather than on calculation precision as such.
EN
We present a custom processor that was designed to enhance algorithms of finding Low Autocorrelation Binary Sequences (LABS). Finding LABS is very computationally exhaustive, but no custom computing solutions have been reported in the literature so far. A computational kernel which allowed creating an effective single-purpose processor was determined and an appropriate architecture was proposed. The selected elements of the architecture were coded in High-Level Synthesis (HLS) language to speed up the design process. Afterwards, the processor was verified and tested in Xilinx’s Virtex7 FPGA. At the beginning of the paper, we briefly present the finding LABS problem and its importance. Later, we deliver the algorithm, its custom processor structure, and implementation results in terms of the processor performance, size and power.
EN
This paper presents implementations of a few selected SQL operations using the CUDA programming framework on the GPU platform. Nowadays, the GPU’s parallel architectures give a high speed-up on certain problems. Therefore, the number of non-graphical problems that can be run and sped-up on the GPU still increases. Especially, there has been a lot of research in data mining on GPUs. In many cases it proves the advantage of offloading processing from the CPU to the GPU. At the beginning of our project we chose the set of SELECT WHERE and SELECT JOIN instructions as the most common operations used in databases. We parallelized these SQL operations using three main mechanisms in CUDA: thread group hierarchy, shared memories, and barrier synchronization. Our results show that the implemented highly parallel SELECT WHERE and SELECT JOIN operations on the GPU platform can be significantly faster than the sequential one in a database system run on the CPU.
PL
Artykuł opisuje implementację algorytmu DES z wykorzystaniem języka Impulse C. Język Impulse C należy do rodziny języków określanych wspólnym mianem języków HLL (High Level Language), których zadaniem jest, w stosunku do języków VHDL i Verilog, rozwinięcie możliwości opisu sprzętu na poziomie systemu. W założeniu, opis taki ma być syntezowalny i możliwy do implementacji w układach FPGA. W artykule skrótowo przedstawione zostały najważniejsze cechy charakterystyczne języka Impulse C oraz narzędzi programistycznych związanych z tym językiem. Przedstawiono również kilka sposobów optymalizacji projektów wykonywanych w języku Impulse C.
EN
In this paper we describe an FPGA implementation of the DES algorithm using Impulse C language. Impulse C is the one of the representatives of a growing group of hardware description languages known as High Level Languages (HLLs). The Impulse C extends standard ANSI C by introducing an extensive set of pragmas, new data types and library functions [3]. The Impulse C compiler translates programs that are written in 'C' into RTL-level system description. Section 1 describes some of the most important properties of the Impulse C language that are used in discussion conducted on later sections. Section 2 presents briefly the DES algorithm. In the next section a basic implementation of the DES algorithm is given. The block diagram of the designed circuit is shown in Fig. 1. The design was implemented using Xilinx Virtex 5 LX 220 FPGA. The basic version originates from the software version of the algorithm. Thus it is not optimized for hardware implementation. In the last section some improvements of the basic design available in the Impulse C are described. Those include a migration of arrays from a block RAM to FPGA internal registers and replication combinatorial logic. The result for the basic version of the algorithm and its optimized versions are presented in Table 1. Fig. 2 depicts the final algorithm implementation. The optimized version allows for a 8,25 times speedup over the basic version.
EN
The specific features of general-purpose computing on graphics processing units (GPGPU) in the area of scientific computing are highlighted. The hardware and software resources provided by CYFRONET are presented and selected benchmark calculations are briefly introduced.
EN
Implementation results of the exchange-correlation module are presented in this paper. The authors have ported a computationally intensive part of quantum chemistry code to FPGA, which involved a substantial modification of its structure so that it matches the platform profile. Additionally, a set of the authors' customized modules for floating operations has been created along with software procedures handling FPGA-GPP intercommunication. Furthermore, several tests have been conducted to determine the speed-up achieved. Some more advanced computational cases have also been investigated to examine the module's performance increase with the number of atomic orbitals. The tests conducted for the orbital module revealed a significantly raised acceleration for higher atomic shells. This work also contains implementation results of the S matrix generation module, which are promising since the presented logic allows calculations to be conducted for 16 points simultaneously.
PL
W niniejszym artykule przedstawione zostały wyniki implementacji modułu obliczającego potencjał korelacyjno-wymienny dla procedury DFT. Autorzy zaimplementowali wymagające obliczeniowo fragmenty algorytmu DFT, co wiązało się ze znaczną modyfikacją algorytmu, tak by w pełni wykorzystać możliwości struktur rekonfigurowalnych. W konsekwencji powstał zestaw sprzętowych modułów zmiennoprzecinkowych oraz procedur zapewniających komunikacje pomiędzy częścią sprzętową oraz programowaną akceleratora. Przeprowadzone testy na platformie RASC wykazały przyspieszenie obliczeń wynoszące 3x dla modułu obliczającego wartość orbitalu atomowego w punkcie, natomiast większe przyspieszenie uzyskano dla jednostki realizujące obliczenia macierzy S.
7
PL
Niniejszy artykuł prezentuje nową metodę kompensacji błędu odcięcia dla mnożenia o stałej szerokości bitowej czyli takiej, dla której szerokość bitowa argumentów wejściowych jest taka sama jak wyjścia. Niektóre poprzednie publikacje były oparte na błędnych założeniach, dlatego zadaniem tej publikacji jest wykazanie wspomnianych błędów oraz zaprezentowanie nowej architektury, dla której błąd średni dąży do zera.
EN
Multiplication is usually implemented in hardware as a full bit-width parallel multiplier, i.e., input bit-widths add up to make up the output bit-width. Nevertheless, in most real-world cases, the input bit-width n is the same as the output bit-width. Therefore, in order to reduce a multiplier area, the n LSBs columns of the multiplier are truncated during the multiplication process (see Fig. 1). This introduces a truncation error which can be reduced by an error compensation circuit. The truncation errors presented in the previous papers, e.g. [3, 6, 7], are based on the false assumption; during truncation error calculation it is sufficient to consider only the combination of each partial input bit products aibj. instead of ever input bits ai and bj (see Fig. 2 and Tab. 1). Therefore a proper fixed-width multiplier structure should be introduced (the old one should be redesigned). This paper focuses on optimizing the mean error (ME) of the truncated multiplier. As a result, a novel Improved Variable error Compensation Truncated Multiplier (IVCTM) is proposed which in comparison to [2], reduces the number of AND gates by 1 in the error compensation circuit (see Fig. 3). For the IVCTM, a mean error is significantly lower than for previously published counterparts. The structure of the IVCTM is simplified in comparison to the previously published truncated multiplier [2], therefore it occupies less silicon area.
PL
W niniejszym artykule przedstawione zostały wyniki implementacji modułu obliczającego wartość orbitalu atomowego w punkcie. Moduł ten stanowił cześć składową jednostki generującej wartość potencjału korelacyjno-wymiennego, wykorzystywaną w obliczeniach kwantowo-chemicznych. Prezentowana jednostka składa się z potokowych bloków zmiennoprzecinkowych. W pracy zaprezentowano również wyniki akceleracji obliczeń względem procesora ogólnego przeznaczenia Itanium2 1.6 GHz.
EN
The paper presents FPGA acceleration and implementation results of the orbital function calculation employed in quantum-chemistry. The orbital function core is composed of the authors' customized floating-point hardware modules. These modules are scalable from single to double precision, capable of working at frequency ranging from 100 to 200 MHz. Besides hardware implementation, the design process also involved reformulation of the algorithm in order to adapt them to the platform profile. The computational procedure presented in this paper is part of the algorithm for generating exchange-correlation potential, and is also recognized as one of the most computationally intensive routines. This feature justifies the effort devoted to develop its hardware implementation. The precision of floating-point operations becomes a primary concern when dealing with low-level quantum chemistry procedures, thus the authors have taken various measures to optimize them, both in terms of resource consumption and processing speed.
PL
Niniejszy artykuł prezentuje mnożenie o stałej szerokości bitowej, dla którego szerokość bitowa argumentów jest taka sama jak danej wyjściowej. Najmłodsze bity wyniku są odrzucane już na etapie mnożenia, dzięki czemu układ zajmuje mniej zasobów kosztem niewielkiego błędu obliczeń, który można zmniejszyć poprzez zastosowanie dodatkowych bitów ochronnych, układu kompensacji błędu oraz operacji zaokrąglania. Niniejszy artykuł proponuje nową architekturę uwzględniające powyższe operacje.
EN
The paper deals with fixed-width multipliers, i.e. multipliers for which inputs and output bit-width is the same. In order to reduce hardware requirements for such a multiplier, some of the multiplier logic is truncated during multiplication process (see Fig. 1). This, however, introduces a calculation error which can be reduced by both special truncation-error compensation logic (e.g. presented in Fig. 2) and by additional guard bits. As presented in Tabs. 1 and 2, for relatively small number of guard bits g, the overall error is determined by the rounding process rather than truncation. Nevertheless, as it is proved in this paper, for g>0, the error compensation logic interfere with the rounding process, e.g. offsets the Mean Error (ME). Therefore a novel multiplier denoted as Mean Error optimized Rounded Truncated Multiplier (MERTM) is presented. The MERTM, instead of rounding, includes additional AND gates in comparison to the VCTM [1]. As a result, for the MERTM, ME approaches zero.
EN
This paper presents research on FPGA based acceleration of HPC applications. The most important goal is to extract a code that can be sped up. A major drawback is the lack of a tool which could do it. HPC applications usually consist of a huge amount of a complex source code. This is one of the reasons why the process of acceleration should be as automated as possible. Another reason is to make use of HLLs (High Level Languages) such as Mitrion-C (Mohl, 2006). HLLs were invented to make the development of HPRC applications faster. Loop profiling is one of the steps to check if the insertion of an HLL to an existing HPC source code is possible to gain acceleration of these applications. Hence the most important step to achieve acceleration is to extract the most time consuming code and data dependency, which makes the code easier to be pipelined and parallelized. Data dependency also gives information on how to implement algorithms in an FPGA circuit with minimal initialization of it during the execution of algorithms.
11
Content available remote Utilization of FPGA Architectures for High Performance Computations
EN
The primary intention of this paper is to present the results of several cases where the FPGA technology was used for high performance calculations. We gathered applications that had been developed over the last couple of years. Over this period of time we observed that there had been a rapid growth of interest in the utilization of FPGA for HPC. Basing on our expertise we give selected metrics, results and conclusions which, in our opinion, are important for anyone who is interested in FPGA as an alternative for faster computations. A brief description of the characteristics of FPGA and FPGA usage for acceleration are also included for novices on the subject.
PL
W artykule przedstawione zostały wyniki implementacji modułu obliczającego część wielomianową orbitalu atomowego. Generowanie funkcji orbitalnej jest jednym z najbardziej wymagających obliczeniowo fragmentów procedury DFT. Procedura ta wykorzystywana jest w chemii kwantowej do modelowania zaawansowanych wieloatomowych cząsteczek. Wykonanie obliczeń na komputerach dużej mocy zajmuje często wiele czasu, który dla bardziej skomplikowanych układów może wynosić nawet kilka dni. Dlatego została podjęta próba przyspieszenia obliczeń DFT z wykorzystaniem układów FPGA. Otrzymane wyniki akceleracji silnie zależą od charakteru cząsteczki, dla której prowadzone są obliczenia. Maksymalne uzyskane przyspieszenie wynosiło 3,5x. Należy oczekiwać większego przyspieszania, gdy kompletny algorytm generowania macierzy korelacyjno-wymiennej zostanie zaimplementowany w układzie FPGA.
EN
The hardware acceleration module for generating the polynomial part of the orbital function in quantum chemistry calculation is presented. Both implementation and acceleration results are provided in the paper along with the comparison tests (against Itanium 2 processor). The implementation described can be regarded as a milestone on the way towards introducing an efficient hardware implementation of the exchange-correlation potential. The FPGA-based SGI RASC accelerator was used to offload a processor in the most exhausting computations of the SCF routine. The paper also covers issues regarding an integration of the PP (polynomial part) module with the rest of the computational system.
PL
Praca przedstawia badania nad metodologią przyspieszania aplikacji HPC na platformach HPRC (platformy HPC z układami FPGA). Najważniejszym zagadnieniem jest selekcja kodu źródłowego, który mógłby zostać przyspieszony. Największym utrudnieniem jest brak odpowiedniego narzędzia wspomagającego ten proces. Aplikacje HPC składają się z ogromnej ilości bardzo złożonego kodu źródłowego. Powoduje to, że niezbędny jest system automatycznej analizy kodu. Dodatkowo powstające języki wysokiego poziomu (HLL) do implementacji algorytmów w FPGA ułatwiają automatyzację transformacji i implementacji wybranego kodu w FPGA. Profiling pętli w kodzie źródłowym jest jednym z głównych kroków, który umożliwia sprawdzenie, czy dana aplikacja HPC jest możliwa do przyspieszenia w układach FPGA. Oprócz selekcji najbardziej czasochłonnych części kodu istotna jest także analiza danych wykorzystywanych w trakcie obliczeń. Przede wszystkim zależności między danymi i ich ilość odgrywa zasadnicze znaczenie. Dzięki tej informacji można optymalnie implementować algorytmy przez minimalizację częstotliwości komunikacji między CPU a układem FPGA.
EN
This paper presents the research on FPGA based acceleration of HPC applications. The most important step to achieve this goal is to extract code that can be sped up. A major drawback is the lack of a tool which could do it. The HPC applications usually consist of a huge amount of complex source code. This is one of the reasons why the process of acceleration should be as automated as possible. Another reason is to make use of HLL (High Level Languages) such as Mitrion-C and Impulse-C. Loop profiling is one of the steps to check if the insertion of HLL to existing HPC source code is possible to gain acceleration of these applications. Hence the most important step to achieve acceleration is to extract the most time consuming code and data dependency, which makes the code easier to be pipelined and parallelized. Data dependency also gives information on how to implement algorithms in an FPGA circuit with the minimal initialization of it during the execution of algorithms.
EN
Nowadays, general-purpose processors are being used in scientific computing. However, when high computational throughput is needed, it’s worth to think it over if dedicated hardware solutions would be more efficient, either in terms of performance (or performance to price ratio), or in terms of power efficiency, or both. This paper describes them briefly and compares to contemporary general-purpose processors’ architecture.
PL
Współczesnie w obliczeniach naukowych stosuje sie procesory ogólnego przeznaczenia. Gdy potrzebna jest duża przepustowość obliczeniowa, warto zastanowić się, czy dedykowane rozwiązania sprzętowe nie okazałyby się efektywniejsze pod względem wydajności (lub stosunku wydajności do ceny), zużycia energii bądź obu czynników jednocześnie. Artykuł opisuje pobieżnie dedykowane rozwiązania sprzętowe i porównuje ze współczesnymi architekturami procesorów ogólnego przeznaczenia.
PL
W niniejszej pracy podjęto temat realizacji modułu sprzętowego, mogącego skutecznie przyspieszyć programowe realizacje operacji kryptograficznych. Rozpatrywanym algorytmem jest szyfrowanie asymetryczne RSA. Moduł został zaimplementowany w układzie firmy Xilinx - Virtex 4 LX200. Prędkość działania modułu została porównana z najpopularniejszymi rozwiązaniami programowymi. Rezultaty pokazują, że rozwiązania bazujące na układach rekonfigurowanych mogą konkurować z implementacjami opartymi na procesorach ogólnego przeznaczenia (GPP).
EN
Modular exponentiation is a key operation for RSA cryptographic algorithm. There are many algorithms for computing modular exponentiation - equation 1. The most basic are right to left and left to right binary algorithms. For key length k=1024 bits, 1024 modular squarings and 512 modular multiplications on average must be performed. There are many optimization which allows to minimize the number of multiplications, however they are more suited for software implementations. Therefore key factor for faster modular exponentiation is fast multiplier module. This work presents example implementation of modulo multiplier using Montgomery multiplication algorithm [1]. Montgomery multiplication is the most efficient algorithm when large number of multiplications must be performed with respect to the same modulus n. Our results show that timings comparable with modern processors can be achieved - table 2. This works also presents optimizations of proposed module, which allow greater speedup and application of FPGA bas
PL
Niniejszy artykuł prezentuje sprzętową realizację filtracji Bloom'a w układach FPGA. Implementacja ta służy do szybkiego wyszukiwania wielu wzorców binarnych bądź znakowych w dużym zbiorze danych. Podczas filtracji Bloom'a sekwencyjnie podawane dane wejściowe są haszowane, a następnie obliczony hash jest porównywany w pamięci z podanymi wzorcami. Proces haszowania ciągu wejściowego jak i porównywanie z wzorcami odbywa się potokowo. Zaproponowana implementacja równoległa w jednym takcie zegara porównuje 16-bajtowy fragment ciągu wejściowego ze wszystkimi wzorcami. Przy uzyskanej szybkości zegara 100 MHz, szybkość przeszukiwania danych wejściowych wynosi 1.6 GB/s.
EN
This paper presents FPGAs implementation of Bloom filters. Consequently a great number of both binary and text patters can be quickly searched for in a large database. For Bloom filters, sequencially fed input data are hashed, then addresses a special memory which output data indicates whether the input string is or is not one of paterns. The whole implementation is strongly pipelined and parallel. Consequently, 16-byte of input data are processed in a single clock cycle at clock frequency 100 MHz, therefore the search throughput is 1.6 GB/s.
EN
In this paper a novel method of computation using FPGA technology is presented. In several cases this method provides a calculations speedup with respcct to the General Purpose Processors (GPP). The main concept of this approach is based on such a design of computing hardware architecture to fit algorithm dataflow and best utilize well known computing techniques as pipelining and parallelism. Configurable hardware is used as a implementation platform for custom designed hardware. Paper will present implementation results of algorithms those are used in such areas as cryptography, data analysis and scientific computation. The other promising areas of new technology utilization will also be mentioned, bioinformatics for instance. Mentioned algorithms were designed, tested and implemented on SGI RASC platform. RASC module is a part of Cyfronet's SGI Altix 4700 SMP system. We will also present RASC modern architecture. In principle it consists of FPGA chips and very fast, 128-bit wide local memory. Design tools avaliable for designers will also be presented.
PL
Autorzy prezentują nową metodę prowadzenia obliczeń wielkiej skali, opartą na układach FPGA. W szczególnych przypadkach jej zastosowanie prowadzi do skrócenia czasu obliczeń. Podstawą metody jest prowadzenie obliczeń za pomocą architektur obliczeniowych projektowanych dla danego algorytmu. Ponieważ architektura stworzona została specjalnie dla zadanego algorytmu, lepiej wykorzystuje możliwości równoległej i potokowej realizacji obliczeń. Jako platformę realizacji architektur dedykowanych zastosowano układy rekonfigurowalne. Artykuł prezentuje także wyniki zastosowania wspomnianej techniki w takich obszarach, jak kryptografia, analiza danych i obliczenia naukowe podwójnej precyzji. Wskazano również na inne dziedziny nauki, gdzie opisywana technika jest z powodzeniem stosowana (np.: bioinformatyka). Zrealizowane algorytmy były uruchomione i przetestowane na zainstalowanym w ACK Cyfronet AGH module SGI RASC, będącym częścią systemu SMP Al-tix 4700. Przedstawiono architekturę zastosowanego modułu RASC oraz narzędzia i metody projektowania dostępne dla programistów.
PL
Operacja pomnóż i dodaj to fundament realizacji obliczeń numerycznych we współczesnej nauce i technice. Możliwość szybkiej realizacji tej opera-cji ma zasadnicze znaczenie dla efektywności systemu obliczeniowego. Obok techniki przyśpieszania obliczeń polegającej na równoległej ich realizacji duże znaczenie i zastosowanie ma również technika przetwarzania potokowego. Zwiększa ona przepustowość modułów obliczeniowych wydłużając opóźnienie. W przypadku operatora pomnóż i dodaj zastosowanie techniki potokowej ze względu na pętle sprzężenia zwrotnego w ścieżce danych napotyka pewne problemy. W pracy zaprezentowano sposób potokowej realizacji operacji pomnóż i dodaj oraz wyniki jej implementacji w FPGA dla argumentów zmiennoprzecinkowych podwójnej precyzji.
EN
Multiply and accumulate operation is a foundation of contemporary numerical computation in science and technology. Ability for its fast execution is crucial for performance of computing system. In computing acceleration beside parallel processing technique also pipelining has an important role as a way to increase system throughput. In a case of multiply-and-accumulate (MAC) operation there is a problematic issue that comes from the feedback loop necessary in MAC architecture. In this paper double precision MAC pipeline architecture is proposed and FPGA implementation results presented.
PL
Tematem artykułu jest implementacja standardu szyfrowania danych AES-128 w układach reprogramowalnych FPGA. W systemach, gdzie wymagana jest duża szybkość szyfrowania informacji implementacje programowe okazują się zbyt wolne. W związku z tym zachodzi konieczność sprzętowej akceleracji obliczeń, a idealnym rozwiązaniem jest wykorzystanie do tego celu możliwości, jakie dają układy reprogramowalne FPGA. Do implementacji w języku VHDL wybrana została podstawowa wersja algorytmu określonego w standardzie AES. W celu uzyskania maksymalnej szybkości szyfrowania zastosowana została architektura potokowa modułu.
EN
In this paper we investigate hardware implementation of AES-128 cipher standard on FPGA technology. In many network applications software implementations of cryptographic algorithms are slow and inefficient. To solve the problems custom architecture in reconfigurable hardware was used to speed up the performance and flexibility of Rijndael algorithm implementation. We aimed at achieving the maximum speed and efficiency of cipher process, therefore pipeline architecture of AES module was proposed. The investigations involved simulations and synthesis of VHDL code utilizing Virtex4 series of Xilinx.
PL
W środowisku komputerów dużej mocy obliczeniowej sprzętowa akceleracja obliczeń jest zagadnieniem relatywnie nowym. Oczywiście technika sprzętowej akceleracji rozumiana jako zastosowanie do określonych zadań obliczeniowych specjalnie zaprojektowanych architektur jest od dawna znana i stosowana w innych obszarach przetwarzania danych. Jednak nieprzerwany rozwój w dziedzinie technologii półprzewodnikowej oraz w obszarze narzędzi do projektowania sprzętu doprowadził do możliwości stosowania tej techniki do zadań tradycyjnie zarezerwowanych dla systemów dużej mocy obliczeniowej. Artykuł prezentuje stosowane przez autorów techniki i metody, dzięki którym możliwe jest osiągnięcie większej wydajności obliczeniowej poprzez wspomaganie realizowanych algorytmów za pomocą specjalnie projektowanych akceleratorów sprzętowych.
EN
In the area of high performance computing hardware acceleration is relatively new method. Undoubtly utilization of custom hardware is well known and widely used in several areas of digital systems. Beside that constant progress in the field of reconfigurable devices and EDA tools enhancement lead to the opportunity to use reconfigurable hardware based acceleration techniques in the area traditionally occupied by general purpose processors. This paper presents some methods used by authors to get higher computation power in scientific computation thanks to custom hardware implemented in programmable devices.
first rewind previous Strona / 2 next fast forward last
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ć.