Welcome!


Thank you for visiting my home on the Web. Here you can find out about me, check out my bookmarks, click over to my blog, browse some of my photos, or look at a selection of topics below that I find particularly interesting. I'm currently an Assistant Research Professor at the Storage Systems Research Center at UCSC.

Leveraging Distributed Knowledge


It frequently happens that for a given problem someone else has already a solution. Sometimes these individual solutions can be combined to create a better solution. ToolBox is an early prototype that attempts to do just that for the domain of using Unix commands. ToolBox works well in mapping tasks to Unix tools but it falls somewhat short in capturing the workflow of how more complex tasks get done.

Workflow systems are traditionally designed to guide and track work, implementing rigid procedures which are often a poor approximation of how work actually gets done. Work efficiency is often dependent on distributed knowledge to such an extent that "working according to procedure" becomes a form of strike! Thus, workflow systems should support work beyond prescribed procedures and facilitate quick adaptation to existing practice (see also this workshop on adaptive workflow systems). Chautauqua is an early prototype that supports exception handling and dynamic change. Chautauqua is implemented using Paos (Python Active Object Server) which integrates object storage, caching, and notification service.

Increasing Systems Performance


An early web cache performance analysis indicated among other things that (1) much bandwidth capacity goes wasted due to the diurnal traffic pattern with very large differences between off-peak and peak levels, and (2) transforming the web cache request stream into an access stream that matches the design assumptions of the underlying file system can significantly reduce hit latencies. For the first case I investigated bandwidth smoothing according to which a web cache prefetches web content during off-peak periods using machine learning methods. For the second case I studied the relative performance of modified Squid architectures by measuring the performance of corresponding workload generators which transformed actual web cache traces into file system access streams. All this resulted in a Ph.D. thesis and landed me a job with the performance analysis team at Network Appliance where I was responsible for NetCache and NearStore performance and for representing Netapp at the design and implementation of the Web Polygraph Benchmark.



Valid XHTML 1.0! Valid CSS!