The essential elements of a scientific method are iterations, recursions, interleavings, and orderings of the following:
* Characterizations (observations, definitions, and measurements of the subject of inquiry)
* Hypotheses (theoretical, hypothetical explanations of observations and measurements of the subject)
* Predictions (reasoning including logical deduction from the hypothesis or theory)
* Experiments (tests of all of the above)
A linearized, pragmatic scheme of the four points above is sometimes offered as a guideline for proceeding:
1. Define the question
2. Gather information and resources (observe)
3. Form hypothesis
4. Perform experiment and collect data
5. Analyze data
6. Interpret data and draw conclusions that serve as a starting point for new hypothesis
7. Publish results
8. Retest (frequently done by other scientists)
A more proactive application of the scientific method: Strong Inference
- Develop alternative hypothesis.
- Develop one or more experiments that can exclude or corroborate an alternative hypothesis.
- Predict experimental results before running the experiment.
- Run experiment.
The Methods that computer architects use
-- the methods used to evaluate alternative architectures.
1.Analytic Modeling
Analytical models are mathematical expressions that approximate some behaviors of a system by capturing some system features and omitting others. An accurate model predicts system behavior close to actual behavior. An insightful model omits irrelevant system aspects so that what remains captures the essence of what is important.
2.Simulation
With simulation, a computer program -- called simulator -- running on a host computer is used to mimic the functionality, and usually some performance metrics, of a target computer system.
3.System Monitoring
System monitoring is the technique that computer architects use to learn from the present(soon-to-be past). With system monitoring, one records information about the behavior of a running system.
Simulation in details
In practice, many simulations combine components from different levels. High-level components are used when simulation speed is important, detailed aspects have not yet been designed, or this aspect of the design is not the current focus of activity. Low-level components are used otherwise.
Reference:
1.http://en.wikipedia.org/wiki/Scientific_method
2.Mark D. Hill, Norman P. Jouppi and Gurindar S. Sohi, Readings in Computer Architecture, Chap. 2
总结:
科学方法:问题(观察)->假设(理论)->实验(分析,验证)->假设->……
体系结构者三种方法,用数学的、软件的、硬件的方法。模拟的方法,(目前涉及)两种层次:功能级和微体系结构级。微体系结构级分执行驱动和trace驱动。
Simulation的目的:mimic the functionality and performance metrics.
没有评论:
发表评论