📄 http:^^www.cs.washington.edu^homes^derrick^skills.html
字号:
Date: Tue, 10 Dec 1996 21:47:57 GMTServer: NCSA/1.4.2Content-type: text/htmlLast-modified: Fri, 21 Jun 1996 00:11:49 GMTContent-length: 4893<html><head><title>Practical Data Sheet</title></head><body><h1>W. Derrick Weathersby</h1><h2> Practical Data Sheet</h2><p>I have many years of software development experience on platforms rangingfrom IBM mainframe computers (4341, 3090) running MVS/TSO, VM/CMS toRISC workstations and Personal Computers hosting Unix (AIX, Ultrix, OSF/1,Linux, BSDI), NT, OS/2, DOS and Windows. Additionally, I've developedsignificant WEB applications including an online transaction managementsystem, a distributed document server and more. <p>Take a look at my <!WA0><a href="http://www.cs.washington.edu/homes/derrick/resume.ps">resume in postscript form</a>.<p>Here are a list of my signifcant projects or amassed experiences over thelast decade.<p><h2><a name="XSERVER">Shared X-server project</a></h2>I led a team of developers in building a distributed, user interface tocontrol the sharing of X applications. The project centered around ashared X-server we developed under AIX 3.2 on IBM RS/6000 boxes. TheX-server enabled multiple clients to share the interface of arbitraryX applications with out being re-written. The user interface was alsoa distributed, shared application since it had to reflect the changingstate of the X-server and the entire system (shared session) as a whole.<p>The interesting challenges were asynchronously changing the state of allclients in a session, allowing clients to synchronously change the stateof the session, "cloning" the user interface for a late arriving client,and defining the interface to intuitively display the session state and theother participating clients.<p><h3>Useful skills</h3><ul><li> Languages: The entire project was designed in C++<li> X: Xwindows, Xt Intrinsics, Motif<li> OS: AIX internals, signals, sockets (UDP and TCP), network programming<li> Misc: Developed a user interface prototype generator</ul><p><h2><a name="ZPL">Data Parallel Array Langauge and Compiler</a></h2>This project was begun in 1993 as a result of the thesis work done byDr. Calvin Lin under the direction of Professor Larry Snyder. Larryhas spent many of his research cycles on parallel computation and bringingthe field up to the level of sequential computation. He started bydefining a realistic machine model for parallel computers that captured the salient features having influence on the performance of the machines.His machine model is called CTA or Candidate Type Architecture. Larry contended that in order to achieve peak performance on parallelmachines, applications had to be written to perform well on the CTA.Basically, this said that the CTA is a general architecture that programmerscan utilize when developing and estimating performance of their applications.Further, the compiler writers could use the model to generate bettercode. Calvin demonstrated that applications following the CTA had better predictive qualities in terms of performance and, in fact, wouldperform equivalently relative to similar applications for any machineimplementing the CTA.<p>Following the machine model, the Orca language (Orca-C)was conceived to help theprogrammers abstract the notions of the CTA.Calvin's work was done by hand translating C code to Orca-C.Orca-C defined three levels of abstraction to assist the programmer: X, Yand Z. The X level specified task parallelism, the Z level encompasseddata parallelism and the Y level defined the distribution of data (torealize the parallelism). ZPL stands for Z Programming Level and as thename implies, its purpose was to fulfill the data parallel level ofabstraction. <p>ZPL was designed with two major goals: Efficiency and Portability. Thesegoals often conflict, but have been brought together in matrimony giventhe design methodology of the language. Basically, the language initiallystarted out with features that could be compiled effectively and thelanguage idioms only included ones with the "highest" degree of parallelism.After all, the language was being targeted for one level of a threelevel abstraction; therefore, there was no pressure for completeness (theX level would offer this completeness since task parallelism is much moregeneral than data parallelism). In any event, the language grew carefully with much deliberation with full features. ZPL is now afully functioning <!WA1><a href=http://www.cs.washington.edu/research/projects/zpl>language and compiler</a>.<p><h3>Useful skills</h3>I've worked on many of the internals of the compiler, including interprocedural analysis (aliases, statically determining index sets --ZPL allows index to be inherited through a runtime region stack),code generation and AST traversal and minipulation routines.<p>However, my research has focused on the collective communication routinessuch as broadcasts, scans and reduces. <p><p><center><!WA2><img src="http://www.cs.washington.edu/homes/derrick/pics/construc.gif"></center></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -