Tom Lake - Academia.edu (original) (raw)

Papers by Tom Lake

Research paper thumbnail of Reverse engineering of assembler programs: a model-based approach and its logical basis

Proceedings of WCRE '96: 4rd Working Conference on Reverse Engineering

The REAP project at InterGlossa is developing tools to support maintenance and reverse engineerin... more The REAP project at InterGlossa is developing tools to support maintenance and reverse engineering of assembly language programs, concentrating on wellengineered hand-coded programs. Abstraction of assembly programs takes place in the context of a selected 'engineering model' which includes the definition of the instruction set semantics but also constraints on the programs simalar to those found in ABIs. The process of translataon takes the form of a large-scale anductive demonstration that the program meets the constraints of the 'engineering model' as the translated abstraction is produced. A n engineer's interface makes this manifest to the engineer supervasing the translation. This approach can in prancaple handle programs whose models include a disciplined use of code selfmodificataon or dynamic register bank switching. A s intermediate language for the major analyses involved we use a representation based on the XANDF X/Open standard originating from the UK Defence Research Agency. XANDF is a standard for architecture neutral program representation which will permit support for analyses of portability. Concurrency is not yet covered but recent advances show how XANDF can be extended to encompass concurrency and distribution[lO]. We illustrate the effectiveness of the tools with examples taken from live Intel 8051 and Zilog Z80 systems. 'This work is partly supported by the UK Department of Trade and Industry under the SMART programme.

Research paper thumbnail of Mersenne Numbers: consolidated results

This document provides and comments on the results of the Lucas-Lehmer testing and/or partial fac... more This document provides and comments on the results of the Lucas-Lehmer testing and/or partial factorisation of all Mersenne Numbers Mp = 2^p-1 where p is prime and less than 100,000. Previous computations have either been confirmed or corrected. The LLT computations on the ICL DAP is the first implementation of Fast-Fermat-Number-Transform multiplication in connection with Mersenne Number testing. This paper championed the disciplines of systematically testing the Mp, and of double-sourcing results which were not manifestly correct. Both disciplines were adopted by the later GIMPS initiative, the 'Great Internet Mersenne Prime Search, which was itself one of the first web-based distributed-community projects.

Research paper thumbnail of ANDF—sequential to parallel

Research paper thumbnail of Languages for Parallel Processing / Sprachen für die parallele Datenverarbeitung

it - Information Technology

Tom Lake studied Physics at Oxford and at the University of Pennsylvania, USA completing his doct... more Tom Lake studied Physics at Oxford and at the University of Pennsylvania, USA completing his doctorate in 1972. He started his computing career with the computing service of the University of London. He spent 8 years with the development branch of computer manufacturer ICL, where he was active in the design and production of its relational products and of the DAP FORTRAN system for ICL's 4096 processing element SIMD machine, the Distributed Array Processor (DAP). In 1985 he became a founding director of the parallel software company, Intercept Systems, and still has close involvement with software for the DAP. He is founding chair of the British Computer Society's Parallel Processing Specialist Group which has been a focus for those with a broad interest in parallel computing. The technical basis of computing is encouraging a shift to parallel architectures. Parallel computer languages and models of computation are examined. Four approaches to the provision of parallel languages are described taking as examples FOR-TRAN 77, SISAL, occam, FORTRAN 8X and CONCURRENT PROLOG. The impact of language developments on scientific and engineering computation is briefly discussed. Technische Gegebenheiten ermutigen zu einem Übergang auf parallele Architekturen. Parallele Computersprachen und Berechenbarkeitsmodelle (models of computation) werden untersucht. 4 Ansätze zur Erstellung von Parallel-Sprachen werden beschrieben, wobei als Beispiel FORTRAN 77, SI-SAL, occam, FORTRAN 8X und CONCURRENT PROLOG dienen. Der Einfluß der Entwicklung von Sprachen auf wissenschaftliche und technische Berechnungen werden kurz besprochen.

Research paper thumbnail of Distributed simulation with locality

We describe MOSS, a small language of mobile distributed objects and system-wide references, unco... more We describe MOSS, a small language of mobile distributed objects and system-wide references, uncommitted to any distributed simulation protocol, but which can be executed as a distributed conservative simulation with automatic deduction of lookahead. We show how the MOSS programmer can control the dynamic distribution and locality of simulation objects by simple means which provide natural modelling functions. Preliminary results show how programmed locality can reduce communication costs in simulation.

Research paper thumbnail of Featherweight threads and ANDF compilation of concurrency

Lecture Notes in Computer Science, 1995

We present an intermediate representation called ThreadTDF, a component of the Parallel TDF syste... more We present an intermediate representation called ThreadTDF, a component of the Parallel TDF system for compiling distributed concurrent programs to shared and distributed memory multiprocessors. ThreadTDF is a parallel extension of the TDF architecture neutral distribution format (ANDF) for sequential programs. ThreadTDF provides featherweight thread mechanisms for explicitly scheduling dynamic finegrain concurrent computations within procedures (and more generally within static local scopes). Communication between address spaces is supported by remote service request mechanisms based upon asynchronous activation of remote threads and synchronous remote procedure calls. In ThreadTDF variable lifetimes bound the lifetimes of featherweight threads declared in their scope. We show how a compiler uses thread lifetime information to integrate resource allocation and communication with thread scheduling for efficient intraprocedural concurrency. Initial performance results are given for the SPARC processor. * This work was carried out under contract for the UK Defence Research Agency ** The authors can be contacted as {Ben.Sloman,Tom.Lake)@glossa.co.uk. 3 Though the TDF technology has proved useful for portability checking tools.

Research paper thumbnail of Reverse Engineering of Assembler Programs: A Model-Based Approach and its Logical Basis

Working Conference on Reverse Engineering, 1996

The REAP project at InterGlossa is developing tools to support maintenance and reverse engineerin... more The REAP project at InterGlossa is developing tools to support maintenance and reverse engineering of assembly language programs, concentrating on well-engineered hand-coded programs. Abstraction of assembly programs takes place in the context of a selected `engineering model' which includes the definition of the instruction set semantics but also constraints on the programs similar to those found in ABIs. The process

Research paper thumbnail of Mersenne Numbers: consolidated results

Research paper thumbnail of ANDF—sequential to parallel

Abstract Machine Models For Highly Parallel Computers, Sep 14, 1995

Research paper thumbnail of Reverse engineering of assembler programs: a model-based approach and its logical basis

Proceedings of WCRE '96: 4rd Working Conference on Reverse Engineering

The REAP project at InterGlossa is developing tools to support maintenance and reverse engineerin... more The REAP project at InterGlossa is developing tools to support maintenance and reverse engineering of assembly language programs, concentrating on wellengineered hand-coded programs. Abstraction of assembly programs takes place in the context of a selected 'engineering model' which includes the definition of the instruction set semantics but also constraints on the programs simalar to those found in ABIs. The process of translataon takes the form of a large-scale anductive demonstration that the program meets the constraints of the 'engineering model' as the translated abstraction is produced. A n engineer's interface makes this manifest to the engineer supervasing the translation. This approach can in prancaple handle programs whose models include a disciplined use of code selfmodificataon or dynamic register bank switching. A s intermediate language for the major analyses involved we use a representation based on the XANDF X/Open standard originating from the UK Defence Research Agency. XANDF is a standard for architecture neutral program representation which will permit support for analyses of portability. Concurrency is not yet covered but recent advances show how XANDF can be extended to encompass concurrency and distribution[lO]. We illustrate the effectiveness of the tools with examples taken from live Intel 8051 and Zilog Z80 systems. 'This work is partly supported by the UK Department of Trade and Industry under the SMART programme.

Research paper thumbnail of Mersenne Numbers: consolidated results

This document provides and comments on the results of the Lucas-Lehmer testing and/or partial fac... more This document provides and comments on the results of the Lucas-Lehmer testing and/or partial factorisation of all Mersenne Numbers Mp = 2^p-1 where p is prime and less than 100,000. Previous computations have either been confirmed or corrected. The LLT computations on the ICL DAP is the first implementation of Fast-Fermat-Number-Transform multiplication in connection with Mersenne Number testing. This paper championed the disciplines of systematically testing the Mp, and of double-sourcing results which were not manifestly correct. Both disciplines were adopted by the later GIMPS initiative, the 'Great Internet Mersenne Prime Search, which was itself one of the first web-based distributed-community projects.

Research paper thumbnail of ANDF—sequential to parallel

Research paper thumbnail of Languages for Parallel Processing / Sprachen für die parallele Datenverarbeitung

it - Information Technology

Tom Lake studied Physics at Oxford and at the University of Pennsylvania, USA completing his doct... more Tom Lake studied Physics at Oxford and at the University of Pennsylvania, USA completing his doctorate in 1972. He started his computing career with the computing service of the University of London. He spent 8 years with the development branch of computer manufacturer ICL, where he was active in the design and production of its relational products and of the DAP FORTRAN system for ICL's 4096 processing element SIMD machine, the Distributed Array Processor (DAP). In 1985 he became a founding director of the parallel software company, Intercept Systems, and still has close involvement with software for the DAP. He is founding chair of the British Computer Society's Parallel Processing Specialist Group which has been a focus for those with a broad interest in parallel computing. The technical basis of computing is encouraging a shift to parallel architectures. Parallel computer languages and models of computation are examined. Four approaches to the provision of parallel languages are described taking as examples FOR-TRAN 77, SISAL, occam, FORTRAN 8X and CONCURRENT PROLOG. The impact of language developments on scientific and engineering computation is briefly discussed. Technische Gegebenheiten ermutigen zu einem Übergang auf parallele Architekturen. Parallele Computersprachen und Berechenbarkeitsmodelle (models of computation) werden untersucht. 4 Ansätze zur Erstellung von Parallel-Sprachen werden beschrieben, wobei als Beispiel FORTRAN 77, SI-SAL, occam, FORTRAN 8X und CONCURRENT PROLOG dienen. Der Einfluß der Entwicklung von Sprachen auf wissenschaftliche und technische Berechnungen werden kurz besprochen.

Research paper thumbnail of Distributed simulation with locality

We describe MOSS, a small language of mobile distributed objects and system-wide references, unco... more We describe MOSS, a small language of mobile distributed objects and system-wide references, uncommitted to any distributed simulation protocol, but which can be executed as a distributed conservative simulation with automatic deduction of lookahead. We show how the MOSS programmer can control the dynamic distribution and locality of simulation objects by simple means which provide natural modelling functions. Preliminary results show how programmed locality can reduce communication costs in simulation.

Research paper thumbnail of Featherweight threads and ANDF compilation of concurrency

Lecture Notes in Computer Science, 1995

We present an intermediate representation called ThreadTDF, a component of the Parallel TDF syste... more We present an intermediate representation called ThreadTDF, a component of the Parallel TDF system for compiling distributed concurrent programs to shared and distributed memory multiprocessors. ThreadTDF is a parallel extension of the TDF architecture neutral distribution format (ANDF) for sequential programs. ThreadTDF provides featherweight thread mechanisms for explicitly scheduling dynamic finegrain concurrent computations within procedures (and more generally within static local scopes). Communication between address spaces is supported by remote service request mechanisms based upon asynchronous activation of remote threads and synchronous remote procedure calls. In ThreadTDF variable lifetimes bound the lifetimes of featherweight threads declared in their scope. We show how a compiler uses thread lifetime information to integrate resource allocation and communication with thread scheduling for efficient intraprocedural concurrency. Initial performance results are given for the SPARC processor. * This work was carried out under contract for the UK Defence Research Agency ** The authors can be contacted as {Ben.Sloman,Tom.Lake)@glossa.co.uk. 3 Though the TDF technology has proved useful for portability checking tools.

Research paper thumbnail of Reverse Engineering of Assembler Programs: A Model-Based Approach and its Logical Basis

Working Conference on Reverse Engineering, 1996

The REAP project at InterGlossa is developing tools to support maintenance and reverse engineerin... more The REAP project at InterGlossa is developing tools to support maintenance and reverse engineering of assembly language programs, concentrating on well-engineered hand-coded programs. Abstraction of assembly programs takes place in the context of a selected `engineering model' which includes the definition of the instruction set semantics but also constraints on the programs similar to those found in ABIs. The process

Research paper thumbnail of Mersenne Numbers: consolidated results

Research paper thumbnail of ANDF—sequential to parallel

Abstract Machine Models For Highly Parallel Computers, Sep 14, 1995