70 likes | 171 Vues
Knowledge bases for measurements and modeling. Thijmen , Michael H., Vojtech , Thomas. Problem / Goal. Provide information to the performance analyst What tools to use What/how to measure What/how to model Avoid having to rediscover what has to be measured or modeled. Tools.
E N D
Knowledge bases for measurements and modeling Thijmen, Michael H., Vojtech, Thomas
Problem / Goal • Provide information to the performance analyst • What tools to use • What/how to measure • What/how to model • Avoid having to rediscover what has to be measured or modeled
Tools • What tool best fits my application and environment? • Challenge: come-up with a taxonomy to classify, but also navigate the KB • What multi-core problems can I study with tool X? • Can the tool help me to identify my working set to study cache contention?
Measurements • Experiment templates for automated measurements / to support measurements • What can the measurement be used for? • What information is provided by a measurement? • Limitations and assumptions underlying the measurements, e.g. on the platform used. • What sensors are required? • Knowledge about what is relevant to a certain type of system: what measurements make sense? • Properties that cannot be accurately measured. For example, caching effects in JVMs • What can be queried by tool X? • To what extend should you control the environment?
Models • What helps to increase my prediction accuracy? • E.g. Important .Net platform parameters • Detail of caching strategies for multicore • Where do I learn about the performance parameter? Why and when does it matter? • How do I measure parameters? • Support in deciding on level of accuracy needed
Next steps • Conceptual discussion: • the uses, • sort of information, • Only afterwards: • Performance analysis community platform • Who should lead the platform? • Participation from academics and industry
Ideas for future work • Knowledge base for automatic querying by performance optimization tools • How can the developer be helped in increasing performance • What parameters should a developer be aware of to structure his program? (e.g., #cores, caches) • Provide information at development time alongside standard references such as API documentation