1,558 research outputs found

    Towards an Adaptive Skeleton Framework for Performance Portability

    Get PDF
    The proliferation of widely available, but very different, parallel architectures makes the ability to deliver good parallel performance on a range of architectures, or performance portability, highly desirable. Irregularly-parallel problems, where the number and size of tasks is unpredictable, are particularly challenging and require dynamic coordination. The paper outlines a novel approach to delivering portable parallel performance for irregularly parallel programs. The approach combines declarative parallelism with JIT technology, dynamic scheduling, and dynamic transformation. We present the design of an adaptive skeleton library, with a task graph implementation, JIT trace costing, and adaptive transformations. We outline the architecture of the protoype adaptive skeleton execution framework in Pycket, describing tasks, serialisation, and the current scheduler.We report a preliminary evaluation of the prototype framework using 4 micro-benchmarks and a small case study on two NUMA servers (24 and 96 cores) and a small cluster (17 hosts, 272 cores). Key results include Pycket delivering good sequential performance e.g. almost as fast as C for some benchmarks; good absolute speedups on all architectures (up to 120 on 128 cores for sumEuler); and that the adaptive transformations do improve performance

    Block Sieving Algorithms

    Get PDF
    Quite similiar to the Sieve of Erastosthenes, the best-known general algorithms for factoring large numbers today are memory-bounded processes. We develop three variations of the sieving phase and discuss them in detail. The fastest modification is tailored to RISC processors and therefore especially suited for modern workstations and massively parallel supercomputers. For a 116 decimal digit composite number we achieved a speedup greater than two on an IBM RS/6000 250 workstation

    What\u27s in Your Integer? Factoring using the Quadratic Sieve and Elliptic Curve Method

    Get PDF
    Historically, cryptography has been used to send secret messages. The sender converts the message into something incomprehensible that only the intended recipient can convert back into its original text. Today, cryptography is not only used to send private information, but it also used to digitally sign documents. A digital signature is used as verification when someone sends a message; it ensures that the message actually came from the sender and not an impersonator

    Quantum Computational Supremacy: Security and Vulnerability in a New Paradigm

    Get PDF
    Despite three decades of research, the field of quantum computation has yet to build a quantum computer that can perform a task beyond the capability of any classical computer – an event known as computational supremacy. Yet this multi-billion dollar research industry persists in its efforts to construct such a machine. Based on the counter-intuitive principles of quantum physics, these devices are fundamentally different from the computers we know. It is theorised that large-scale quantum computers will have the ability to perform some remarkably powerful computations, even if the extent of their capabilities remains disputed. One application, however, the factoring of large numbers into their constituent primes, has already been demonstrated using Shor’s quantum algorithm. This capability has far reaching implications for cybersecurity as it poses an unprecedented threat to the public key encryption that forms an important component of the security of all digital communications. This paper outlines the nature of the threat that quantum computation is believed to pose to digital communications and investigates how this emerging technology, coupled with the threat of Adversarial Artificial Intelligence, may result in large technology companies gaining unacceptable political leverage; and it proposes measures that might be implemented to mitigate this eventuality
    • …
    corecore