Torna indietro   Hardware Upgrade Forum > Software > Programmazione

AMD EPYC Venice: dentro Zen 6, i SoC a 256 core e la sfida al costo della memoria
AMD EPYC Venice: dentro Zen 6, i SoC a 256 core e la sfida al costo della memoria
A Las Vegas AMD ha svelato i dettagli architetturali delle CPU EPYC di sesta generazione, note con il nome in codice Venice. Nuovi core Zen 6 e Zen 6c costruiti a 2 nanometri, fino a 256 core per socket, 16 canali di memoria, interfaccia PCI Express 6.0 e un'intera famiglia di proposte che va da Venice SP7 a Verano. Senza dimenticare la memoria, oggi la voce di costo più pesante in un server: AMD risponde con CXL 3.1 e con la tecnologia software MEXT, che porta la memoria flash dentro la gerarchia della DRAM.
HONOR Pad X9 Max recensione, schermo ultra large a meno di 400 euro
HONOR Pad X9 Max recensione, schermo ultra large a meno di 400 euro
HONOR Pad X9 Max mette un pannello IPS da 13 pollici con risoluzione 2,5K e refresh a 120 Hz davanti a una batteria da 10.100 mAh e a quattro altoparlanti. Il listino parte da 399,90 euro, per un progetto molto chiaro e ambizioso: schermo ampio, buon audio e giornate lontano dalla presa, a un prezzo che non pesa sul portafoglio
Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno
Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno
Con la quattordicesima generazione Lenovo ridisegna il suo ThinkPad più iconico attorno al nuovo Space Frame e ai processori Intel Core Ultra Series 3. Resta sotto 1Kg, è molto più semplice da riparare e si rivolge al professionista che lavora in mobilità, con un prezzo da prodotto di vertice.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-05-2008, 19:01   #1
ArchangelInHell
Member
 
Iscritto dal: Nov 2007
Messaggi: 36
[C]Consigli su programmino in C su problema geometrico

Buonasera a tutti!Volevo sapere se potete darmi qualche consiglio(meglio se prima possibile)su questo problema che il mio professore mi ha detto di fare.
Allora..il problema è..data una griglia(considerata come una matrice di poligoni)geografica data con coordinate LAT e LON(latitudine e longitudine)di tipo float e rispettivamente di dimensioni 300x200,assegnato in modo random un punto trovare in quale poligono si trova il punto.Il punto campione lo assegniamo noi.Inoltre ci ha consigliato di considerare sia LAT che LON come matrici nei quali inserire rispettivamente le coordinate x e y.
Quindi il problema è testare tutti i poligoni che formano la griglia e dire quindi in quale poligono è il punto.Già di base possiamo sfruttare un algoritmo che serve per vedere se un punto è in un poligono e ve lo posto:
Codice:
// cn_PnPoly(): crossing number test for a point in a polygon
//      Input:   P = a point,
//               V[] = vertex points of a polygon V[n+1] with V[n]=V[0]
//      Return:  0 = outside, 1 = inside
// This code is patterned after [Franklin, 2000]
int
cn_PnPoly( Point P, Point* V, int n )
{
    int    cn = 0;    // the crossing number counter

    // loop through all edges of the polygon
    for (int i=0; i<n; i++) {    // edge from V[i] to V[i+1]
       if (((V[i].y <= P.y) && (V[i+1].y > P.y))    // an upward crossing
        || ((V[i].y > P.y) && (V[i+1].y <= P.y))) { // a downward crossing
            // compute the actual edge-ray intersect x-coordinate
            float vt = (float)(P.y - V[i].y) / (V[i+1].y - V[i].y);
            if (P.x < V[i].x + vt * (V[i+1].x - V[i].x)) // P.x < intersect
                ++cn;   // a valid crossing of y=P.y right of P.x
        }
    }
    return (cn&1);    // 0 if even (out), and 1 if odd (in)

}
Inoltre,oltre a definire il punto come una struttura e a definire le matrici LAT e LON,molto gentilmente un amico del mio gruppo mi ha consigliato un modo per passare la matrice sempre nel verso positivo e non considerare numeri molto alti in questo modo:

Codice:
#include <stdio.h>

#define N 10
#define M 10

typedef struct {float x,y;}Point;

int main(int argc,char* argv[])
{
 flat lat[M][N];
 flat lon[M][N];
 flat latoff=0.0;
 flat lonoff=0.0;

 for (int i=0;i<M;i++)
 {
  for(int j=0;j<N;j++)
  {
   if(i != 0)
   {
    latoff=lat[i-1][j]
   }
   lat[i][j]=latoff+random()%5;
   lon[i][j]=lonoff+random()%5;
   lonoff=lon[i][j];
  }
  lonoff=0;
 }
}
Ora l'unico problema è che dovrei definire i vertici dei poligoni,mi potete dare qualche consiglio?

Ultima modifica di ArchangelInHell : 21-05-2008 alle 19:35. Motivo: Codice
ArchangelInHell è offline   Rispondi citando il messaggio o parte di esso
Old 21-05-2008, 19:16   #2
wizard_at
Senior Member
 
L'Avatar di wizard_at
 
Iscritto dal: Jul 2006
Città: MILANO
Messaggi: 1645
ciao.
ti consiglio di mettere il codice tra CODE.
[code].....[\CODE] (con la sbarra nell'altro senso)
__________________
xoooxoooxooox
wizard_at è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2008, 09:06   #3
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da ArchangelInHell Guarda i messaggi
Ora l'unico problema è che dovrei definire i vertici dei poligoni,mi potete dare qualche consiglio?
Definirei un Poligono come un Vector di puntatori a struttura Punto [ordinati in senso antiorario]
banryu79 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


AMD EPYC Venice: dentro Zen 6, i SoC a 256 core e la sfida al costo della memoria AMD EPYC Venice: dentro Zen 6, i SoC a 256 core ...
HONOR Pad X9 Max recensione, schermo ultra large a meno di 400 euro HONOR Pad X9 Max recensione, schermo ultra large...
Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno Lenovo ThinkPad X1 Carbon Gen 14: il business ul...
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro Jabra Evolve3 85: le cuffie sia per l'intratteni...
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB...
iPhone 18e svelato in anticipo: ecco cos...
Rockstar ha un piano preciso per il mult...
Un iPhone Duo da oltre 65 mila dollari: ...
Anthropic: IPO tra 70 e 78 dollari, Goog...
SSHole in OpenSSH è già sfruttata: la CI...
Secure Future Group: il rischio cyber si...
Recensione Anker MagGo Power Bank 2 Pro,...
Salesforce Agentforce Coworker: il colle...
Sirui porta l’autofocus luminoso sotto i...
BluePhishing, il nuovo metodo di attacco...
Elon Musk parla dei propulsori Raptor 4 ...
NVIDIA, la vicenda Jensen Huang finisce ...
Spiare un monitor dal cavo HDMI: un'IA a...
Infomaniak lancia lo storage a oggetti S...
Rocket Factory Augsburg ha posticipato i...
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: 23:59.


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