INF205 lab worksheet 4

23. Mid-way evaluation

Do the mid-way evaluation for our course: https://nettskjema.no/a/inf205-2024v. The mid-way evaluation is a simple anonymous survey. In your submission to this worksheet, indicate if you filled it in. Participating in the mid-way evaluation helps us all for the rest of the semester, and it will also help future students as it provides guidance to improving the course.

Plan for discussion on 3rd April: One person can sign up to moderate a discussion about how the course can be improved for future years, and what advice you as students have for the remainder of the semester.

24. Programming project: Groups and topics

What problem will you be working on in your programming project?

Will it be group work, and if so, who is in your group? If feasible, take care that this is in agreement with the group self-signup on Canvas. There can be up to five people per group. You don't need a group; it is also completely valid to work individually.

If you plan to work on a special interest topic, different from the two that have been suggested, introduce the topic briefly.

This is important information to provide, but does not need to be discussed on 3rd April.

On problem 24, all the members of a programming project group can collaborate, even where there are more than two people working together on a project.

25. Programming project: Functionality (objectives)

What feature(s) will you take the main responsibility for? What functionality will you be implementing? Describe it compactly.

If you are in a group, it is important to have responsibilities for features split up between people, so that you can be graded individually. You can still work together, and the whole group shares the responsibility for implementing the basic functionality of the group project.

How do you plan to make it easily verifiable that your objectives are reached? (That will be important for grading your work.)

Plan for discussion on 3rd April: Jointly with problem no. 26, see below.

On problem 25, all the members of a programming project group can collaborate, even where there are more than two people working together on a project.

26. Programming project: Designing the data structure

Draft a suitable data structure, tailored to your plans, using E-R notation. Also discuss: Are there any objects that will serve as containers for other objects or data items? For each class, add a remark/note if you expect that you will implement a destructor, copy operations (constructor and assignment operator), and move operations (constructor and assignment operator).

This is only a draft, you are not tied to it and can still revise and improve it. On the other hand, it helps the code development to begin with a well-designed data structure in mind.

Plan for discussion on 3rd April: For sharing ideas on no. 25+26, we will have five slots where students can present and discuss their respective functionality objectives and draft data structures.

On problem 26, all the members of a programming project group can collaborate, even where there are more than two people working together on a project.

27. MPI environment

Install an MPI environment on your system, such as Open MPI. In most cases under Linux this will work by installing the corresponding package(s) through the package manager, such as sudo apt-get install openmpi*. In most cases, Microsoft MPI should work under Windows.

Compile and run the MPI-parallel counting of prime numbers, varying the number of parallel processes. Do you observe a parallel speedup going up to the number of cores on your system? Overall, how do you explain the observed behaviour?

Plan for discussion on 3rd April: One person to present their own experience and moderate a brief exchange among those present - what issues have you experienced? Is there any support that you would need in order to go ahead?

28. Orion access

Within week 12, you should receive login details to NMBU's high-performance computing infrastructure Orion.

Verify whether this has happened, and your login is working.

Plan for discussion on 3rd April: Assuming that we manage to get it set up in time, the procedure will be the same as described above for no. 27.

(submit through Canvas by end of 2nd April 2024)

Index