We present parallel tiled optimized McCaskill's partition functions computation code. That CPU and memory intensive dynamic programming task is within computational biology. To optimize code, we use the authorial source-to-source TRACO compiler and compare obtained code performance with that generated with the state-of-the-art PluTo compiler based on the affine transformations framework (ATF). For the considered task, PluTo is able to generate only serial highly cache efficient code without any parallelism. A TRACO tiling and parallelizing strategy uses the transitive closure of a dependence graph to avoid affine function calculation. First, for each loop nest statement, rectangular tiles are formed. Then those tiles are corrected to be valid under lexicographical order if necessary. A correction is carried out by means of applying transitive closure. The validity of tiles guarantees that the inter-tile dependence graph is acyclic. So, a valid schedule for target tiles can be derived and applied to generate parallel tiled code. For this purpose, the ISL scheduler is used. An experimental study carried out on a multi-core computer demonstrates considerable speed-up of generated code for the larger number of threads. Generated parallel tiled code overcomes that generated with the PluTo compiler.
2
Dostęp do pełnego tekstu na zewnętrznej witrynie WWW
On December 20th, 2016, the National Institute of Standards and Technology (NIST) formally initiated a competition to solicit, evaluate, and standardize one or more quantum-resistant cryptographic algorithms. Among the current candidates is a cryptographic primitive which has shown much promise in the post-quantum age, Multivariate Cryptography. These schemes compose two affine bijections S and T with a system of multivariate polynomials. However, this composition of S and T becomes costly as the data encrypted grows in size. Here we present Constructive Affine Stream (CAS) Transformations, a set of algorithms which enable specialized, large-scale, affine transformations in O(n) space and O(n log n) time, without compromising security. The goal of this paper is to address the practical problems related to affine transformations common among almost all multivariate cryptographic schemes.
3
Dostęp do pełnego tekstu na zewnętrznej witrynie WWW
W pracy wykazano, że zbiór odwzorowań różnowartościowych spełniających warunek: istnieją liczby rzeczywiste m > 0 i M > 0 takie, że dla dowolnych niepustych zbiorów A, B spełniona jest nierówność ml(A,B) ≤ l(f(A), f(B)) ≤ Ml(A,B), stanowi grupę algebraiczną ze względu na składanie przekształceń, zawierającą grupę podobieństw. Wykazano również, że gdy E jest przestrzenią liniowo metryczną, to odwzorowania afiniczne stanowią podgrupę tej grupy. Dowiedziono, że styczność zbiorów jest niezmiennikiem tak zdefiniowanej grupy przekształceń.
4
Dostęp do pełnego tekstu na zewnętrznej witrynie WWW
W nauczaniu geometrii istnieje pewien problem z prezentacją przekształcenia afinicznego. Część autorów podręczników geometrii dla studentów definiuje przekształcenie afiniczne podając gotowy wzór. Inni podają definicję tego przekształcenia jako bijekcji przestrzeni afinicznej na siebie, przekształcających proste na proste, lecz wówczas nie jest wyprowadzany wzór. Jeszcze inna metoda polega na definiowaniu przekształcenia afinicznego przy pomocy przekształcenia liniowego, co w łatwy sposób prowadzi do odpowiedniego wzoru. Wydaje się, że sposobem najbardziej naturalnym jest sposób drugi uzupełniony o niezbyt żmudne wyprowadzenie wzorów na przekształcenie. Otóż w znanych mi podręcznikach nie spotkałam takiego połączenia. W pracy niniejszej podaję, właśnie, pewien prosty i naturalny sposób wyprowadzania wzoru na przekształcenie afiniczne używając definicji przekształcenia afinicznego jako bijekcji przekształcającej proste na proste. Niech X będzie dwuwymiarową przestrzenią afiniczną o przestrzeni wektorowej V (rzeczywistej). Przyjmujemy następującą definicję Definicja 1. Bijekcję f: X→X przekształcającą proste na proste nazywamy przekształceniem afinicznym.
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ć.