Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - faisal

Pages: [1]
1
I can't grasp the idea of false sharing.

Q1. Are pad, sync, and reduction available choices to solve false sharing/sequential
consistency?

Q2. What difference is made by pad (next slide)?
Followup: Here it appears that all calculations are happening in pad0? Is it right?

Q3. What synchronization doing (next slide)? So does sync solve problem of pad0? Second for loop
Code: [Select]
for
dot + = sum
is gone.

Q4. So what the reduction do? Does reduction do the job of sync and pad? So only reduction is
enough to stop false sharing/sequential consistency? And when to use reduction types?

Q5. Finally does intel mkl has parallel capabilities and can't we do multi-threading and multi-processing in cpp?

2
I have some questions from recently uploaded MPI video @11.46 of the video time.

Q1. Which one will be faster? sum1.c, sum2.c or sum3.c?

Q2. In code dot1.c Will the tid will always be 0 in for(int i = tid ... will always be 0?
Q3. Followup: Will numT = number of elements in sum? 64?
Q4. Followup: Why the second for loop is outside #pragma?

3
Q1. What is the art of programming? Is it a book?
Q2. What is bus?
Q3. What is sequential and parallel programs?
Q4. Followup: What is concurrency?
Q5. Followup: What is difference between MPI(multi processing) and OPENMP(multi-threading)?
Q6. Is MPI multi-core and MP many segments within a core?


4
Programming Bootcamp / Example for lib from cmak file
« on: January 07, 2021, 03:29:49 PM »
How to create .dll or .so or .lib using cmake? So that I can call its functions and public variables/typedefs from c and c++ projects into python. e.g., dll/lib/so for ../code/c++/ExerciseDay3/ex1

5
Programming Bootcamp / Constructor and Destructor types
« on: January 07, 2021, 03:23:14 PM »
What is null constructor and full constructor? Can we have different types of constructors? When shall we use them in recommended way?
Followup question: Can we have a virtual destructor in the interface .h file like:
Code: [Select]
//destructor
  virtual ~Someclass( ) ;

I can refer to some code examples if required.

Pages: [1]