15
1 Jan B. Pedersen Computer Science 2009 Promotion and Tenure Engineer a Difference. Pride in the Profession. 2 Overview Teaching and Mentoring Student Supervision • Research • Service Support material (10 vols.) at http://www.cs.unlv.edu/~matt/tenure

2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

1

Jan B. PedersenComputer Science 2009

Promotionand Tenure

Engineer a Difference. Pride in the Profession.

2

Overview

• Teaching and Mentoring

• Student Supervision

• Research

• Service

• Support material (10 vols.) athttp://www.cs.unlv.edu/~matt/tenure

Page 2: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

3

Teaching and MentoringPhilosophy

• Student focuses.

– Teach the students, no just the material.

• Engage the class in conversation.

• Have them do small questions/assignments.

– Availability

• E-mail, bulletin board, open-door policy.

• Graduate Mentoring

– Be involved in research

• Write papers.

• Preferably pick their own topic (something they like).

4

Teaching - Course Overview

!CSC 789Multiparadigm.

!!!CSC 789Multi.Proc.Prog.

!CSC 489/689Net. & Dist.Sys.

!!CSC 465/665Networks

!CSC 478/678Compilers

!!!!!!!CSC 460/660Compilers

!!!!!CSC 326Prog. Lang.

SP09

FA08

SP08

FA07

SP07

FA06

SP06

FA05

SP05

FA04

SP04

On average 1 new course taught per year.

Page 3: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

5

Teaching – Course DevelopmentCSC 326 Programming Languages

Write a virtual machine for a a mnemonicversion of Java Byte Code (called Jasmin).

.class public test

.super java/lang/Object

.method public foo(I)V .limit stack 50 .limit locals 3

iconst_0 istore 2L1: iload 1 iconst_0 if_icmpge L3 iconst_0 goto L4L3: iconst_1L4: ifeq L2 iload 1 iconst_5 irem

72 Pages.

Espresso Virtual

Machine (EVM)

~ 6,600 Lines of Java.

Other Material:

• Note on Recursion/Induction (9 pages)

• Note on Program Correctness (21 pages)

6

Teaching – Course DevelopmentCSC 460/660 (478/678) Compilers

109 Pages.

6 stage compiler for Espresso (Java 1.1 withoutimport, exceptions, and arrays):

Phase 1: Use scanner and parser generator (JFlex /java CUP) to create scanner/parser.

Phase 2: Build parse trees.

Phase 3: Symbol resolution / scope checking.

Phase 4: Type checking.

Phase 5: Modifier checking.

Phase 6: Code generation.

Extra: Phase 7: Optimization.

~ 11,600 Lines of Java code.

Other Material:

• Notes on parsing (23 pages)

• LL(1), SLR, LR(1), LALR(1) parsers & parser generators in Java (~ 13,400 Lines of Java)

Page 4: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

7

Teaching – Course DevelopmentCSC 789 Multi-processor Programming

• Parallel programming using C and MPI (Message Passing Interface) on a loosely coupled cluster of workstations: TBE 361 Lab machines/School of Computer Science Teaching Cluster (8 nodes)/College of Engineering 300+ node Beowulf cluster.

• Buffer requirements, synchronous communication, process oriented design.

• Project.

Optimization &parallelization.

Data layout &communication.

Functional decomp.Pipeline computation.

Non-trivial communication.

8

Teaching – Course DevelopmentCSC 789 Multiparadigmatic Programming

Functional Programming:

Scheme.

Lecture Notes. Evaluator Notes. Data Base Ass. Santa Claus Problem Ass.141 pages. 21+14 pages. 25 pages 18 pages. (1,200 Lines.) (1,000 Lines.) (330 Lines.)

Process Oriented

Programming: occam.

Message Passing

Programming: C + MPI.

Formal Verification:

CSP + FDR.Other Topics:

Lecturenotes(not mine)

Page 5: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

9

Teaching – Student EvaluationsMean & Median

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

SP

'0

4 -

47

8

SP

'0

4 -

67

8

FA

'04

- 3

26

FA

'04

- 7

89

SP

'0

5 -

46

0

SP

'0

5 -

46

5

SP

'0

5 -

66

0

SP

'0

5 -

66

5

FA

'05

- 3

26

SP

'0

6 -

46

0

SP

'0

6 -

46

5

SP

'0

6 -

66

0

SP

'0

6 -

66

5

FA

'06

- 4

60

FA

'06

- 6

60

FA

'06

- 7

89

SP

'0

7 -

46

0

SP

'0

7 -

48

9

SP

'0

7 -

66

0

SP

'0

7 -

68

9

FA

'07

- 4

60

FA

'07

- 6

60

FA

'07

- 7

89

SP

'0

8 -

32

6

SP

'0

8 -

46

0

SP

'0

8 -

66

0

FA

'08

- 3

26

FA

'08

- 7

89

SP

'0

9 -

32

6

SP

'0

9 -

46

0

Course

Ev

al

#Evals / 5 Mean Median

10

Teaching Recognitions

College of EngineeringOutstanding Teacher

2008/2009(runner-up in 2007/2008.)

Honors Convocation Spring 2009.

Page 6: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

11

Teaching Tools

A web based system for handing in assignments and providing feedbackto students in the form of comments and grades. Also helps the studentkeep track of his/her performance and projected grade.

12

Graduated M.Sc. Students

Publication: PDPTA 2005 (conf.)Job: Konami, Las Vegas Vegas.com, Las Vegas

97 pp. thesis

(Paralleldebugging/ UI)

Erik Tribou(August 2005)

Publication: PDPTA 2006 (conf.)

Job: Ph.D. student, Clemson U.

138 pp. thesis(Parallel debugging)

Hoimonti Basu(December 2005)

83 pp. thesis(Ubiquitous computing)

Kamesh Khanna(May 2007)

Publication: JPDC 2007 (jrnl.)Job: JT3, Las Vegas, Lockheed Martin, San Diego

55 pp. thesis.(Buffer Allocation)

Jeff Sampson(November 2007)

Publication: CPA 2008 (conf.)Job: Tririga, Las Vegas

114 pp. thesis.(Languages)

George Oprean(April 2008)

Page 7: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

13

M.Sc. Students (Current)

Parallel debuggingJay Adams

Data visualizationArun Sadasivan

Data visualizationBharath Suresh

Publication: CPA 2008 (conf.)Parallel geneticalgorithms.

Jason Hurt(Summer 2010)

Process orientedProgramming / GUIs.

Mikolai Slomka(January 2010)

14

Research

• Topics– Main Topics

• Parallel programming/debugging.

• Process oriented languages.

• Language development.

– Other• GUIs, visualization.

• Geometry.

• Graphics.

• Research and Teaching go hand-in-hand– Original M.Sc. work that can be published.

– Encourage research during class time.

• Collaborate with colleagues on interesting topics

Page 8: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

15

Research: DebuggingTopic: Debugging of parallel messagepassing programs, including:• Graphical Debuggers• Message Debuggers• Error Classification

Conference Publications:

- “Millipede: A Multilevel Debugging Environment for Distributed Systems.” PDPTA 2005. (*)

- “IDLI: An Interactive Message Debugger for Parallel Programming using LAM-MPI.” PDPTA 2006. (**)

- “Classification of Programming Errors in Parallel Message Passing Systems.” CPA 2006.

Several other publications in Debugging before UNLV.

(*) with student Erik Tribou.

(**) with student Hoimonti Basu.

16

Research: Buffer AllocationTopic: Determine the minimum number of buffers needed in aparallel message passing system to avoid deadlock due tobuffer shortage (asynchronous communication turns synchronous)

Journal Publications: - “On the Complexity of Buffer Allocation in Message Passing Systems” Journal of Parallel and Distributed Computing (June 2005) Impact: 0.86 (top 29.07%) 22 pages.

Topic: Develop a heuristic for approximating the Buffer AllocationProblem.

Conference Publications

- “Approximating the Buffer Allocation Problem Using Epochs.” PDCS 2006. Best Paper in Algorithms.

Journal Publications: - “Approximating the Buffer Allocation Problem Using Epochs.” Journal of Parallel and Distributed Computing (September 2008.) Impact: 0.86 (top 29.07%) 20 pages. (*)

(*) with studentJeff Sampson

Page 9: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

17

Research:Process Oriented Programming

No objects, no pointers, no shared memory; everything isa process, and communication is done though synchronousnon-buffered channels. Code is verifiable for dead-locks,live-locks and race conditions through CSP/FDR.

Conference Publications:

- “Solving the Santa Claus Problem: A Comparison of Various Concurrent Programming Techniques” CPA 2008 (*)

Journal Publications:

“Santa Claus: Formal Analysis of a Process-Oriented Solution” Transactions of Programming Languages and Systems (TOPLAS) Impact: 1.92 (top 3.35%) 46 pages.

Santa Claus Problem: Well known exercise inconcurrent programming by John Trono.

(*) with student Jason Hurt

18

Research: Active ObjectsTopic: Asynchronous active objects; re-implementing object orientationsuch that objects are in control of their own code and state.(Re-engineering the object modelwith inspiration from process orientedprogramming.)New Java compiler for Active Java with new keywords for active object support.

Conference Publication:

- “Active Objects in Java” CPA 2008 (*)

(*) with student George Oprean

Page 10: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

19

Research: Model SimplificationTopic: Parallel/distributed simplification of very large polygonal meshes with minimal loss in quality.

Conference Publication:

- “A parallel framework for Simplification of Massive Meshes.” IEEE Symposium on Parallel and Large-Data Visualization and Graphics 2003.

One other publication in this field before UNLV.

20

Research: Sensor NetworksTopic: Where can a senor node move to withoutchanging the connectivity of the network?

In collaboration withDr. Gewali.

Journal Publications:

- “Free Regions of Sensor Nodes.” Systems Science Journal, 2009.

- “Estimating the Free Region of a Sensor Node.” Journal of Combinatorial Mathematics and Combinatorial Computing, 2009.

Page 11: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

21

Research: Random NumbersTopic: Are random number generators really random?Are they uniform? How do we test for randomnessand uniformity? Test of randomness using pictures and/or sound.

Picture of the results of arandom number generator.

In collaboration withDr. Yfantis.

Journal Publications:

- “Random Number Generators: Test for Randomness and Uniformity.” Journal of Combinatorial Mathematics and Combinatorial Computing, 2009.

22

Research: ProcessJTopic: Develop a new process oriented languagecalled ProcessJ – syntax like Java and semantics likeoccam-! (CSP and the !-calculus) – and a compilerwith multiple back-ends:

• occam-! for multicore architectures.

• Java/JCSP for portable code.

• C/MPI for distributed shared memory architectures.ProcessJ example code.

Conference Publications:

- “Resumable Java Methods – Process Mobility in ProcessJ.” CPA 2009. (*)

Funding:

2008/2009 Presidents Research Award ($10,000)

Student Collaboration:

- Jason Hurt (unpaid M.Sc. student.) - Brian Kauke (paid undergraduate student.)

(*) with undergraduateBrian Kauke.

Page 12: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

23

Research: Cluster ComputingCollege of Engineering’s

Beowulf cluster(300+ nodes)

Funding:

Co-PI on initial ~$500,000 grant to establish this cluster. DOE through UNLV Research Foundation.

General cluster usage:

Radiation simulation of space habitats.

Computer Science Usage:

- Buffer allocation computation (298 days worth of computation done in just 3 days.)- Active object experiments.- Genetic neural network generation.

24

Publication/Graduation Summary

!! ! ! !!2009 UNLV

StudentGraduation

StudentPublishing

JournalPublications

ConferencePublications

Year

0 + (3 + 2) = 50 + (2 + 4) = 60 + (1 + 5) = 67 + (5 + 4) = 16UBC + UNLV

!! ! !!! ! !2008 UNLV

!2007 UNLV

!!! ! !2006 UNLV

! !!!!2005 UNLV

2004 UNLV

!2003 UNLV

! !2002 UBC

! ! !2001 UBC

!2000 UBC

!1999 UBC

Midtenure (Oct. 2006)

Page 13: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

25

Service

Member of the UNLV Faculty Senate:2006/2007 " 2008/2009(Senior Senator in 2008/2009).2009/2010 " 2011/2012.

26

Service: Committees

!!!!!!!Reviewer: CPA

!Reviewer: Evolutionary Comp.

!!!!!Reviewer: JPDC

!Reviewer: Jrnl of Super Comp.

!!!!!!!Reviewer: PDPTA

!!!Steering: CPA

!!!!PC: PDPTA

!!!!!!PC: CPA

!!!School: New Degree Programs

!!!!School: Lab/Space

!!!School: Ugrad. Affairs

!!!College: Curriculum

!!!University: Computing

!!!!University: Faculty Senate

2009200820072006200520042003

Page 14: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

27

Ongoing Activities

• ProcessJ – the new process orientedlanguage and compiler.

• A new compiler book.

• More journal papers.

28

Future Plans

• Research– Ph.D. student focus.

• Service– National level committees

• NSF invitations (CyberTrust, NeTS, CSR)

• Text book about process orientedprogramming (with P.H.Welch fromUniversity of Kent)

Page 15: 2 and Tenure › ~matt › tenure › PT-presentation.pdfif_icmpge L3 iconst_0 goto L4 L3: Phase 3: Symbol resolution / scope checking. iconst_1 L4: ifeq L2 iload 1 iconst_5 ¥ irem

29

Summary

• I have achieved my teaching goals by working closelywith students as shown for high marks in teachingevaluations and a teaching award.

• I have developed research originated from my owninterest and independent thinking. I have alsocollaborated with colleagues to strengthen my skills

• I have served the CS professional community and theuniversity in several capacities.

• I believe I have demonstrated that I have the skills andmotivation to be an associate professor in the CSdepartment and I respectfully ask for your vote for mytenure and promotion.

30

Thank You

• Department & College of Engineeringcolleagues.

• Mid-tenure review committee.

• All the students who inspired me and did goodand solid work.