Helsingin yliopisto Tietojenkäsittelytieteen laitos
 

Tietojenkäsittelytieteen laitos

Tietoa laitoksesta:

 
Homework   [an error occurred while processing this directive]

Computer Architectures, Spring 1999, HW 4

To be presented in week 7 (16-18.2.1999)
  1. Problem 3.3 (parts a, b, and c) from the text book (p. 214).

  2. Problem 3.6 from the text book.

  3. Problem 3.14 from the text book.

  4. Problem 4.6 from the text book (p. 363).
    (Notice errata for early printings: consider a scoreboard for a machine with two multiply units and two add units)

  5. [3 htp] Run two given benchmarks in at least two different systems. Try to locate systems that differ both in speed and in (processor) architecture. If you do not come up with anything else, try some of these systems: kruuna (SunOS), hudra (SunOS), karhu (HP-UX), vesuri (Digital OSF), pneuma (Alpha Linux), melkki (Linux), melkinkari (Linux).

    The benchmark programs are Dhrystone and Dinero:

    • Dhrystone is in (fileserver) directory
           ~kerola/src/hennessy/benchmarks/standard
           (or, /home/fs/kerola/src/hennessy/benchmarks/standard )
      Copy it for your self and translate and execute as you wish.

    • Dinero cache simulator is in directory
           ~kerola/src/hennessy/dinero/src
      Copy it and build it as you wish. Check the success of your build with script
           ~kerola/src/hennessy/dinero/demo/dinchk
      Copy and modify this script for your use.

      Dinero requires an input file. Use (compressed) Dinero input file tex.din.Z which is found in
           ~kerola/src/hennessy/dinero/benchmarks
      you can make your Dinero benchmark runs with the script
           ~kerola/src/hennessy/dinero/demo/run.script
      (copy and modify as needed)

    You can find additional information from the README and Makefile files in the above mentioned directories and in the directories above them.

    Try to do the comparison as well as possible under these circumstances. Explain what are possible sources for error in your setup. We will then compare results in the practice sessions. If you have problems with using these programs, please come and ask the instructor, or ask other students directly or via the newsgroup. But do not wait until the practice session or lecture to ask your questions.

    All CS majors have already their departmental system user ids. If you are minoring in CS, please contact Lea Kutvonen (B429) for your user id.

    Finally, compare two systems of your choice, say systems A and B (the system being used can be seen, e.g., with uname -srm command). Compile and run each benchmark twice, by tuning compiler options first so that the executable code is unoptimized (U), and then so that the executable code is optimized to the max (O).

    1. What are your performance metrics for Dhrystone and Dinero?

    2. What are your results?
      • Syst A: Dhrystone A/U and A/O, Dinero A/U and A/O?
      • Syst B: Dhrystone B/U and B/O, Dinero B/U and B/O?

    3. Compute the following proprtions based on your results:
      • Dhrystone A/U vs. B/U, and Dinero A/U vs. B/U
      • Dhrystone A/O vs. B/O, and Dinero A/O vs. B/O
      • Dhrystone A/U vs. A/O, and Dinero A/U vs. A/O
      • Dhrystone B/U vs. B/O, and Dinero B/U vs. B/O

    4. Are those proportions mutually conclusive? I.e., is Dhrystone speed a good estimate of Dinero speed? Why?

    5. What error sources did your study have? How could your remove them?


    Teemu Kerola