Sponsored Content
Top Forums Programming Help with __builtin_prefetch function and it's timing Post 302261472 by Tavo on Monday 24th of November 2008 10:05:23 PM
Old 11-24-2008
The consists in two dimensional arrays that are much bigger than L1D cache. And our professors expect us to "guess" the prefetch distance by introducing timers in the program. But I have yet to see an example of that.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

timing a loop in unix.

hi guys.. i have a shell script that loops through a certain directory to see if a file has been created and then prints the file if it exists... the only problem i have now is that sometimes the flat does not get created by the program thats supposed to create it, in this scenario, my loop... (1 Reply)
Discussion started by: wolkott
1 Replies

2. UNIX for Advanced & Expert Users

scp timing out

having problems using scp in that during peak hours it appears to time out. anyone have similar experiences? any thoughts regarding a solution... (1 Reply)
Discussion started by: jph
1 Replies

3. Shell Programming and Scripting

Timing out a SSH

I need to make it so an autmated process which involves ssh, times out if ssh prompts for a password. Most of the time it shouldnt prompt for a password. But if it does i need it to time it out or get a status and stop the ssh and log that the ssh failed and move onto the next server. Is there any... (9 Replies)
Discussion started by: rcunn87
9 Replies

4. AIX

Kshell scripts and timing

Hello everyone, I have a script thats acting funky, what I would like to do is report to a file, how long its taking to get to certain area's, in seconds. For example. -- Start timer -- Run unix command 1 -- Run unix command 2 -- Stop timer -- Report Seconds -- etc etc Is there a way... (3 Replies)
Discussion started by: dbridle
3 Replies

5. Programming

timing your functions

hi everyone. If you have a function created in your code and you want to find out how long it takes for it to run you can use a struct called gettimeofday(). so lets say we have a function like this int myfunction (int r) { /*some math calculations*/ return answer; } How do i set up... (3 Replies)
Discussion started by: bebop1111116
3 Replies

6. Programming

Weird timing results in C

I was running some timings in my code to see which of several functions was the best and I've been getting some odd results. Here's the code I'm using: static double time_loop(int (*foo)(int)) { clock_t start, end; int n = 0, i = 0; start = clock(); for (; i <= MAXN; i++) if... (6 Replies)
Discussion started by: CRGreathouse
6 Replies

7. Shell Programming and Scripting

Timing a script

i have a very big script i have that i'd like to add a timeout to. this script runs on a several remote host. i update this script with timeout clause and then copy it over to all the hosts on which it is currently on. basically, i want the timeout to make the script abort/exit if it's... (1 Reply)
Discussion started by: SkySmart
1 Replies

8. Shell Programming and Scripting

Timing the shell script

I have two shell scripts, one written with xargs for parallel processing (p1) and the other written in old school way (p3) . when I execute them, i get the below values. $ time ./p1 real 0m25.36s user 0m0.32s sys 0m0.80s $ time ./p3 real 0m23.25s user 0m6.20s sys ... (4 Replies)
Discussion started by: luhah
4 Replies

9. Red Hat

Hardware and system timing are different

-> We have 2 servers server1 and server2 server. ->server1 is master application and server2 is slave application server. ->output of server1 hardware and slave timing: # hwclock --show Thu 05 Jun 2014 05:34:08 PM SGT -0.465666 seconds # date Thu Jun 5 17:34:16 SGT 2014 # cd... (6 Replies)
Discussion started by: manjusharma128
6 Replies

10. Programming

Byte swap timing

I have noticed the difference in byte swap timing between two Ubuntu systems. The bswap_32 used to work just fine on the old system, but on the new one it lags behind home-grown swap. My code: #include <stdio.h> #include <stdlib.h> #include <string.h> #include <byteswap.h> #include... (4 Replies)
Discussion started by: migurus
4 Replies
__BUILTIN_PREFETCH(3)					   BSD Library Functions Manual 				     __BUILTIN_PREFETCH(3)

NAME
__builtin_prefetch -- GNU extension to prefetch memory SYNOPSIS
void __builtin_prefetch(const void *addr, ...); DESCRIPTION
The __builtin_prefetch() function prefetches memory from addr. The rationale is to minimize cache-miss latency by trying to move data into a cache before accessing the data. Possible use cases include frequently called sections of code in which it is known that the data in a given address is likely to be accessed soon. In addition to addr, there are two optional stdarg(3) arguments, rw and locality. The value of the latter should be a compile-time constant integer between 0 and 3. The higher the value, the higher the temporal locality in the data. When locality is 0, it is assumed that there is little or no temporal locality in the data; after access, it is not necessary to leave the data in the cache. The default value is 3. The value of rw is either 0 or 1, corresponding with read and write prefetch, respectively. The default value of rw is 0. Also rw must be a compile-time constant integer. The __builtin_prefetch() function translates into prefetch instructions only if the architecture has support for these. If there is no sup- port, addr is evaluated only if it includes side effects, although no warnings are issued by gcc(1). EXAMPLES
The following optimization appears in the heavily used cpu_in_cksum() function that calculates checksums for the inet(4) headers: while (mlen >= 32) { __builtin_prefetch(data + 32); partial += *(uint16_t *)data; partial += *(uint16_t *)(data + 2); partial += *(uint16_t *)(data + 4); ... partial += *(uint16_t *)(data + 28); partial += *(uint16_t *)(data + 30); data += 32; mlen -= 32; ... SEE ALSO
gcc(1), attribute(3) Ulrich Drepper, What Every Programmer Should Know About Memory, http://www.akkadia.org/drepper/cpumemory.pdf, November 21, 2007. CAVEATS
This is a non-standard, compiler-specific extension. BSD
December 22, 2010 BSD
All times are GMT -4. The time now is 09:21 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy