Thomas Lundqvist - Curriculum Vitae
Verktumsgatan 6, SE-421 36 Västra Frölunda, Sweden. Phone: 070-725 0935, 031-734 0510, email@example.com
|Full name:||John Thomas Lundqvist|
|Language skills:||Swedish (native), English (fluent)|
I have a wide interest in the area of computer science and engineering and look for challenges in both research and education as well as product and system development.
|1987||Graduated as engineer (gymnasieingenjör) from the electrical and telecommunication programme.|
|1987||Added half a year of studies in medical engineering.|
|1995||Master's degree in Computer Science and Engineering, Chalmers University of Technology, Göteborg.|
|2002||Ph.D. in Computer Architecture, Department of Computer Engineering, Chalmers University of Technology, Göteborg.|
|1988||Worked at Energiverken i Göteborg (the Gothenburg energy company) as an engineer and programmer.|
|1989||Military service,. I was a team leader in a signal group.|
|1994||Worked part-time for Unipower AB, in Alingsås, developing a data presentation tool (MS Windows, MFC, C++)|
|2002-2003||Involved in the construction and development of Underlag, a company providing electronic surveys and evaluations.|
|2003||Deputy associate professor, Computer Engineering, Chalmers University of Technology (part-time).|
|2003-2004||Part-time lecturer, University of Trollhättan/Uddevalla.|
|2003-2005||Part-time lecturer, IT University of Göteborg.|
|2005-2007||Assistant professor (Associate Senior Lecturer), Software Engineering and Management, IT University of Göteborg. Manager for a master program. Teaching software engineering and architecture.|
|2008-2009||Researcher and lecturer, Computer Science and Engineering, Chalmers University of Technology. Research project together with RUAG Aerospace Sweden (Saab Space). Teaching in computer architecture courses.|
|2009||Worked as researcher and developer at Time Critical Networks AB, a small start-up supported by Chalmers Innovation (Lindholmen).|
|2010-||Currently employed as senior lecturer (lektor) at the Departement of Economics and IT, Computer engineering section, University west, Trollhättan.|
My area of research while pursuing my Ph.D. was timing analysis methods for high-performance real-time systems. In my Ph.D. thesis, I presented a new method for estimating the worst-case execution time (WCET) of programs running on pipelined microprocessors with cache memories. Professor Per Stenström acted as my supervisor.
To prove my methods, I developed a prototype WCET estimation tool. This tool, as well as the estimation method, was based on an existing PowerPC simulator written in C. I first ported the simulator to C++ to be able to redefine the basic arithmetic operations and then added a program-path exploration algorithm on top.
Even though the development tasks were non-trivial, the real challenges in my research were of a more theoretical nature. In the field of WCET estimation, one need to prove that the estimated execution times are really upper bounds on the actual execution time. To do this, suitable proven abstraction models for hardware mechanisms need to be constructed. In my research, I presented new models for handling processor cache memories and pipelined execution. I also proved that many previously presented models fail due to modern processor's instruction scheduling (scheduling anomalies).
Recently, in a joint project between Chalmers and RUAG Aerospace Sweden (2008), I continued to explore a measurement-based approach to WCET estimation. We looked specifically at the LEON2 microprocessor, a SPARC-based processor targeted for space-borne applications.
- Thomas Lundqvist: "A WCET Analysis Method for Pipelined Microprocessors with Cache Memories," PhD thesis, Dept. of Computer Engineering, Chalmers University of Technology, Sweden, June 2002.
- Harry Gunnarsson and Thomas Lundqvist: "Porting the GNU C Compiler to the Thor Microprocessor," Master of science thesis, Göteborg, Sweden, 1995. (This work was done at Saab Ericsson Space AB.)
- Thomas Lundqvist and Per Stenström: "An Integrated Path and Timing Analysis Method based on Cycle-Level Symbolic Execution," in Real-Time Systems, 17 (2/3):183-207, November 1999.
- Thomas Lundqvist and Patrik Sandin: "Towards a practical WCET analysis approach based on testing," in the Work in Progress Session of 20th Euromicro conference on real-time systems (ECRTS'08 WIP), June 2008.
- Thomas Lundqvist and Per Stenström: "A Method to Improve the Estimated Worst-Case Performance of Data Caching," in Proceedings of the 6th International Conference on Real-Time Computing Systems and Applications (RTCSA'99), pages 255-262, December 1999.
- Thomas Lundqvist and Per Stenström: "Timing Anomalies in Dynamically Scheduled Microprocessors," in Proceedings of the 20th IEEE Real-Time Systems Symposium (RTSS'99), pages 12-21, December 1999.
- Thomas Lundqvist and Per Stenström: "Integrating Path and Timing Analysis using Instruction-Level Simulation Techniques," in Proceedings of ACM SIGPLAN Workshop on Languages, Compilers, and Tools for Embedded Systems, pages 1-15, June 1998.
During my 5 years of Ph.D. studies, I taught 20 % of my time (1 year in total). Each course typically lasted for one quarter of a year and was annually recurring.
|1996-1997||Fundamentals of Digital Systems and Computer Engineering. I was a teaching assistant. Students worked in small groups with a focused subject each week.|
|1996-1997||Computer Science and Engineering in Context. Teaching assistant/group tutor. Project based learning in groups.|
|1998-2002||Computer System Engineering. Teaching assistant. In the last years, I was partly responsible for the administration of the course. Also, I was partly responsible for designing and creating the special assignments included in the course.|
After my Ph.D degree, I continued teaching:
|2003||Parallel Computer Architectures. I was in charge of this course for one semester. This course consisted mainly of a series of lectures summarizing the subject area, but also two laborations.|
|2005-2006||Master program in Software Engineering and Management. I was the program manager of this international master program and I was also responsible for and taught in many of the courses.|
|2006-2007||Software Architecture, Software Engineering, and Embedded Systems These were all courses I was managing and teaching.|
|2008-2009||Parallel Computer Organization and Design, Computer Architecture, and Operating Systems. I was the main lecturer in the parallel course and the computer architecture course and did half the lecturing in the operating systems course.|
|1997||Pedagogy for tutors (handledarpedagogik), 2 weeks. A course focused on learning in groups. Led by Shirley Booth (Chalmers) and Marita Christmansson. An excellent course joining both theory and practice as a tutor.|
Given my PhD and teaching background, I have good communication skills both written and orally. I also have management experience from being responsible for an educational program.
Concerning the more technical skills and experiences I have ample experience of using several programming languages, frameworks, and tools. I have experience in using C/C++, Ruby, Python, Java, and UML. I also have extensive experience with many open-source tools and components like: Unix/Linux, GNU compiler tools, Eclipse, Apache, and Mysql.
2004 - Won a find-the-bug contest - I won an iPod in a contest by bookpool.com who wanted to promote the book Find the bug by Microsoft guy Adam Barr. Adam wrote:
"...This came down to who was more precise in his or her answers. In the end Thomas Lundqvist emerged as a clear winner, with George Dean a close second. Congratulations to the winners, and thanks again to all of you who entered, as well as to the staff at Bookpool for hosting the contest..."