| Contact information 
              Phone: (650) 857-8156
                | Email: rob dot schreiber at hp dot com |  Physical Address: 1501 Page Mill Road, MS 1177, Palo Alto, CA 94304
 
Bio Rob Schreiber is Assistant Director of the 
			Exascale Computing Lab at Hewlett 
			Packard Laboratories. He is known for basic research in sequential and parallel algorithms for matrix computation, and compiler optimization for parallel languages. Rob has been a professor of Computer Science at Stanford University and at RPI, 
			was Chief Scientist at Saxpy Computer, and a research scientist at 
			the NASA Ames Research Center. He was a developer of the sparse-matrix extension of Matlab, a leading designer of the High Performance Fortran programming language, and one of the developers of the NAS parallel benchmarks. He wrote the matrix computation libraries at Maspar. At HP, Rob was a technical leader and an implementer of PICO, a 
			tool for hardware synthesis from high-level specifications. His 
			current research is in algorithms and architectures for 
			high-performance computing and data analysis. 
                
                    | 
							
							
							Graph 
							Clustering:
							With Bob Tarjan, Nina Mishra, Dennis Wilkinson, and Bei Wang, I've developed new approaches to finding 
							clusters of graph vertices that have more 
							connections to one another than would be expected 
							given their degree.
							
							Role 
							Discovery: Discovering the 
							roles or job functions in an organization from acess 
							control lists can be a useful first step in 
							introducing role-based access control. 
							
							Nanophotonic 
							Architecture:
							The microprocessor of the future will consist of 
							many CPU cores.   What isn't clear is how 
							they will talk to each other and to memory.  
							Our project looks at the use of integrated photonic 
							communication devices to raise bandwidths and reduce 
							the energy cost of communication. 
							
							
							The Parallel 
							Programming Features of Matlab: 
							I've worked with Mathworks on the new features of 
							Matlab that allow a programmer to write code for a 
							parallel cluster.
							
							Other topics in 
							Parallel Programming: Recent 
							work on synchronization cost, on memory management.
							
							
              				Some work on 
							computer vision: There are 
							nice applications of linear algebra, theoretical and 
							computational. |  Slides from some recent talks Publications
 A list of my selected paper publications is here.
 
Data
The user-permission relations (bipartite graphs) used for the experiments in our 
SACMAT 08 paper, in a zip file: 
sacmat_relations.zip.
 
The covers generated by the greedy 
heuristic with lattice-based postprocessing are in another:
lattice_covers.zip 
The exact covers (minimum biclique covers) generated 
by our problem reduction / graph coloring approach are in a third:
exact_covers.zip |  | 
 |