Already have an account? Get multiple benefits of using own account!
Login in your account..!
Remember me
Don't have an account? Create your account in less than a minutes,
Forgot password? how can I recover my password now!
Enter right registered email to receive password!
Present your own fully documented and tested programming example illustrating the prevention of a data race in a parallelised program.
This is an example where total number of prime number between 2 and 10000 is being calculated. The order of memory accesses is prevented from being non-deterministic and from the code data race is avoided by making it parallelized with OpenMP directives. The inconsistency can be seen by running the program consecutively for 3 or more times.
#include
#define MyThreads 4
#define num 10000
int primeNum[num];
int primeF[num];
int is_prime(int v)
{
int i;
int lim = floor(sqrt(v)) + 1;
for (i = 2; i < lim; i++) {
/* no need to check against known composites */
if (!primeF[i])
continue;
if (v % i == 0) {
primeF[v] = 0;
return 0;
}
return (v > 1);
int main(int argn, char **argv)
int total = 0;
printf("Enter a number greater than 2");
scanf("%d", &num)
#ifdef _OPEnumMP
omp_set_dynamic(0);
omp_set_num_threads(MyThreads);
#endif
for (i = 0; i < num; i++) {
primeF[i] = 1;
#pragma omp parallel for
for (i = 2; i < num; i++) {
if ( is_prime(i) ) {
primeNum[total] = i;
total++;
printf("total prime numbers that lie between 2 and %d: %d\n",
num, total);
A Unix shell is a shell or command-line interpreter that gives a traditional user interface for the Unix-likesystems and for Unix operating system. Users operates the operation of
Question: (a) The following table (table 1.0) gives the length of the CPU burst time in milliseconds of processes P 1 to P 4 . Assume the processes arrived in the order P 1 ,
fork and join syntax in java
Q. What is the purpose of system calls? Answer: System calls permit user-level processes to request services of the operating system.
What is a buddy system? We are dividing the memory as powers of two therefore the division will be 2, 4, 8, 16, 32, 64, 128, 256...i.e. in powers of 2 as well as we are selecti
Q. Why is it important to scale up system bus and device speeds as the CPU speed increases? Answer: Consider a system which carries out 50% I/O and 50% computes. Doubling-up
The producer-consumermodel above has a standard human analogy of an assembly line. Humans have specialized skills, however, whereas threads running the same program do not need to
Define UFD and MFD. In the two-level directory structure, every user has her own user file directory (UFD). Every UFD has a similar structure, but lists only the files of a one
What is paging? Paging is a memory management scheme that authorizes the physical-address space of a process to be noncontiguous. Paging evades the considerable problem of fi
File System Interface and Implementation The Nachos file system, as distributed, uses a single-level index allocation method for data allocation of files. In the current design,
Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!
whatsapp: +91-977-207-8620
Phone: +91-977-207-8620
Email: [email protected]
All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd