Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HUAWEI MatePad Air recensione: OLED opaco e tastiera dedicata per lavorare meglio
HUAWEI MatePad Air recensione: OLED opaco e tastiera dedicata per lavorare meglio
HUAWEI MatePad Air combina diverse carte molto interessanti: un OLED PaperMatte da 12 pollici, un corpo sottile e una tastiera molto comoda. Durante la prova abbiamo apprezzato fluidità, audio e comfort visivo, mentre i test hanno chiarito pregi e qualche limite nelle prestazioni. L'autonomia ha convinto anche nell'uso intermittente; la scelta passa dalla compatibilità delle proprie app e dal valore del pacchetto con accessori, proposto a 749 euro
NVIDIA RTX Spark: il PC Windows on ARM costruito per l'IA agentica
NVIDIA RTX Spark: il PC Windows on ARM costruito per l'IA agentica
Debuttano ufficialmente i primi sistemi notebook basati su piattaforma NVIDIA RTX Spark, abbinati a Windows on ARM e pensati per l'intelligenza artificiale agentica. Architettura integrata tra CPU e GPU che condividono la memoria di sistema, capace di gestire in locale modelli molto grandi ma al contempo anche di spiccare con la grafica e l'elaborazione
Motorola razr fold, dalla conchiglia al formato a libro. La recensione
Motorola razr fold, dalla conchiglia al formato a libro. La recensione
Abbiamo provato Motorola razr fold, il pieghevole a libro con display interno LTPO da 8,09 pollici, Snapdragon 8 Gen 5 e batteria da 6000 mAh in 243 grammi. Pennino e custodia sopno già nella confezione, per un foldable che si caratterizza per il pannello luminoso, l'autonomia ottima per la categoria e le fotocamere coerenti e ben sfruttabili. Il listino è di 1999 euro, ma in vendita si trova già a molto meno
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-04-2009, 11:52   #1
TuLKaS85
Senior Member
 
L'Avatar di TuLKaS85
 
Iscritto dal: Nov 2004
Città: Napoli
Messaggi: 999
[C-Unix] Calcolo tempo in nanosecondi

ho un problema, devo testare il tempo di esecuzione di una funzione in C, utilizzo code::blocks sotto windows e come compilatore usao gcc.

utilizzando questi metodi ottengo sempre ke la differenza tra lo start() e lo stop() è nulla, quindi c'è bisogno di una routine che calcoli il tempo in unità di misura più piccole...

ecco il primo metodo precisione millisecondi:

Codice:
#include <sys\timeb.h>
-------
struct timeb t_start, t_current;
int t_diff;

ftime(&t_start);
// FUNZIONE DA TESTARE
ftime(&t_current);
t_diff = (int) (1000.0 * (t_current.time - t_start.time)+ (t_current.millitm - t_start.millitm));
printf("Time: %d\n",t_diff);
il secondo precisione (forse) secondi:

Codice:
#include <time.h>
-------
clock_t seconds,seconds2;
seconds = clock();
 //FUNZIONE DA TESTARE 
 seconds2 = clock();
printf("Time: %.3f \n",((double)(seconds2-seconds)/( (double)CLOCKS_PER_SEC)));
con entrambi i metodi ottengo sempre 0 come risultato....
__________________
Intel Pentium IV 3,0 GHz, Asus P5SD2-X , 1.0 Gb ddr2, Radeon X550 , Maxtor 160Gb sata, Hitachi 100 gb pata,Piooner Dvr-109 ,Microsoft Windows XP Professional Service Pack 2

Ultima modifica di TuLKaS85 : 10-04-2009 alle 11:56.
TuLKaS85 è offline   Rispondi citando il messaggio o parte di esso
Old 10-04-2009, 12:29   #2
BrutPitt
Senior Member
 
L'Avatar di BrutPitt
 
Iscritto dal: Mar 2009
Città: Bologna
Messaggi: 1176
In Unix puoi usare la funzione POSIX clock_gettime() con CLOCK_REALTIME come primo paramentro

http://linux.die.net/man/3/clock_gettime


Codice:
#include <time.h>

timespec start, end;

    clock_gettime( CLOCK_REALTIME, &start ); 


//FUNZIONE DA TESTARE

    clock_gettime( CLOCK_REALTIME, &end ); 

float tempoTrascorso = (end.tv_sec - start.tv_sec) + (1e-9)*(end.tv_nsec - start.tv_nsec);
(Devi linkare la libreria librt.a)



In Windows puoi dare un'occhiata a QueryPerformanceCounter e QueryPerformanceFrequency

http://msdn.microsoft.com/en-us/libr...04(VS.85).aspx


Dovrebbe funzionare piu' o meno cosi'...
Codice:
#include <windows.h>

LARGE_INTEGER start;

LARGE_INTEGER freq, end; 

    QueryPerformanceCounter( &start ); 

//FUNZIONE DA TESTARE

    QueryPerformanceCounter( &end ); 
    QueryPerformanceFrequency( &freq );  
float tempoTrascorso = (end.QuadPart - start.QuadPart)/(float)freq.QuadPart;
P.S.
Controllale... ho scritto di getto, senza verificarle... e potrei aver scritto delle cavolate

Ultima modifica di BrutPitt : 10-04-2009 alle 12:46.
BrutPitt è offline   Rispondi citando il messaggio o parte di esso
Old 10-04-2009, 22:11   #3
TuLKaS85
Senior Member
 
L'Avatar di TuLKaS85
 
Iscritto dal: Nov 2004
Città: Napoli
Messaggi: 999
grazie ho seguito il primo consiglio...
solo che mi dava errore sulla dichiarazione di timespec, nonostante abbia linkato -lrt e librt.a ... (per linkare una libreria come questa si aggiunge -librt.a e basta giusto ?)

ho provato a dichiarare io la struttura timespec ed ha funzionato, da solo un warning sulla chiamata di clock_gettime , dice che il secondo parametro non corrisponde... però i tempi li riesco a vedere lo stesso...
__________________
Intel Pentium IV 3,0 GHz, Asus P5SD2-X , 1.0 Gb ddr2, Radeon X550 , Maxtor 160Gb sata, Hitachi 100 gb pata,Piooner Dvr-109 ,Microsoft Windows XP Professional Service Pack 2
TuLKaS85 è offline   Rispondi citando il messaggio o parte di esso
Old 11-04-2009, 07:07   #4
BrutPitt
Senior Member
 
L'Avatar di BrutPitt
 
Iscritto dal: Mar 2009
Città: Bologna
Messaggi: 1176
Si basta solo -lrt... ma il problema allora non e' la libreria librt.a, visto che la clock_gettime() viene inclusa nel linking, ma la dichiarazione della struttura.

La struttura dovrebbe essere (anzi e') in <time.h> e se non la prende in automatico basta aggiungere alla linea di comando del compilatore, l'opzione:

-D __need_timespec

In alternativa potresti anche utilizzare una dichiarazione interna, un po' meno elegante della precedente, del tipo:

#define __need_timespec
#include <time.h>

In cui il #define __need_timespec percede l'include in questione.

Ultima modifica di BrutPitt : 11-04-2009 alle 07:12.
BrutPitt è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HUAWEI MatePad Air recensione: OLED opaco e tastiera dedicata per lavorare meglio HUAWEI MatePad Air recensione: OLED opaco e tast...
NVIDIA RTX Spark: il PC Windows on ARM costruito per l'IA agentica NVIDIA RTX Spark: il PC Windows on ARM costruito...
Motorola razr fold, dalla conchiglia al formato a libro. La recensione Motorola razr fold, dalla conchiglia al formato ...
Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente Recensione Google Pixel Watch 5: sembra lo stess...
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo Nokia Innovation Day 2026: la sovranità e...
Il satellite spia russo Kosmos 2612 si t...
Blue Origin continua l'espansione: nuove...
Intel prepara un SoC da 700 TOPS: Razor ...
I nuovi Xreal 1 Pro+ arrivano in Europa ...
La GeForce RTX 5090 non è morta: ...
HONOR Win2 si mostra online: potenza da ...
Clamoroso dietrofront di Sony: cancellat...
GeForce NOW, tante novità con l'u...
Il mercato smartphone rallenta nel Q3 20...
Addio al Valve Index: fine della produzi...
Seggiolini auto i-Size da 0 a 12 anni in...
Amazon determina i prezzi di tutto il we...
Robot aspirapolvere ECOVACS in offerta s...
Bodywel F20PRO o DEEPOWER A5? Due fat bi...
Gli agenti AI non diventano pazzi, sono ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 03:27.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v