Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

FidoCadJ 0.24.1 beta ed ottimizzazione sotto MacOSX

Linguaggi e sistemi

Moderatori: Foto UtentePaolino, Foto UtenteMassimoB, Foto Utentefairyvilje

4
voti

[1] FidoCadJ 0.24.1 beta ed ottimizzazione sotto MacOSX

Messaggioda Foto UtenteDarwinNE » 21 giu 2012, 0:39

Ciao a tutti,
è da un po' di giorni che sto lavorando a FidoCadJ, in particolare per renderlo più veloce e per fare in modo che richieda meno memoria per funzionare. Sto quindi facendo uscire versioni preliminari di quella che sarà la 0.24.1 in questa directory:

https://sourceforge.net/projects/fidoca ... lic_betas/

Il file più recente è quello che appare più in alto (fidocadj06212012.jar, ovvero 0.24.1 beta nel momento in cui scrivo). Potete dirmi cosa ne pensate?

Avrei un'ulteriore richiesta da fare a coloro che utilizzano MacOSX. Vi chiederei di effettuare le operazioni seguenti (spero le descrizioni siano chiare e corrette):

1 - Scaricare il file fidocadj06212012.jar e metterlo sulla scrivania.
2 - Aprire un terminale (si trova sotto Applicazioni/Utility).
3 - Digitare quanto segue (i comandi sono quelli che seguono il dollaro, prima è il prompt del mio sistema):

Codice: Seleziona tutto
[davidebucci@davide-bucci-portable]$ cd Desktop/
[davidebucci@davide-bucci-portable]$ java -version


4 - Potete riportarmi cosa viene indicato, assieme ad informazioni sul vostro hardware? Per esempio, sul mio portatile (MacBook CoreDuo 2GHz con 2GiB di RAM e MacOSX 10.6.8):
Codice: Seleziona tutto
java version "1.6.0_31"
Java(TM) SE Runtime Environment (build 1.6.0_31-b04-415-10M3646)
Java HotSpot(TM) Client VM (build 20.6-b01-415, mixed mode)


5 - Digitare quanto segue (dovrebbe lanciare FidoCadJ. Se è molto brutto non preoccupatevi, perché non viene utilizzato Quaqua.

Codice: Seleziona tutto
java -Dapple.awt.graphics.UseQuartz=false -jar fidocadj06212012.jar


6 - Scaricate il file in allegato e scompattatelo. Dovreste ottenere un disegno (abbastanza grosso) chiamato tracciacurve_quad.fcd.
tracciacurve_quad.fcd.zip
(72.43 KiB) Scaricato 48 volte


7 - Aprite il disegno normalmente con FidoCadJ che si è appena attivato.

8 - Dentro FidoCadJ, nel menu con le opzioni del programma, nella categoria "Disegno", attivate il profiler (Console).

9 - Non toccando nessuna opzione legata allo zoom (né le barre di scorrimento), fate click in una zona del disegno, se possibile lontano da elementi grafici per non selezionarne nessuno. Questo forza un ridisegno e sul terminale appariranno alcune informazioni legate alla velocità con cui quest'opzione è eseguita. Fate almeno 50 ridisegni e poi incollate qui le ultime righe che vi appaiono:

Codice: Seleziona tutto
... [cut a lot of stuff] ...
MR: Time elapsed: 2.0; record: 1.0 ms
MP: Time elapsed: 26.0; record: 7.0 ms
MR: Time elapsed: 2.0; record: 1.0 ms
R: Time elapsed: 444.0 averaging 468.0408163265306ms in 49.0 redraws; record: 442.0 ms
R: Time elapsed: 444.0 averaging 467.56ms in 50.0 redraws; record: 442.0 ms


10 - Uscite da FidoCadJ e rilanciatelo con il comando seguente, sempre da terminale:

Codice: Seleziona tutto
java -Dapple.awt.graphics.UseQuartz=true -jar fidocadj06212012.jar


11 - Ripetete i passi 7, 8 e 9 e riportatemi qui quanto ottenete.

Vi chiedo tutto questo perché ho notato che... sul mio portatile FidoCadJ è 10 volte più veloce quando l'opzione apple.awt.graphics.UseQuartz è attivata, nonostante Apple a partire da Java 1.6 la ponga per default a false. Ecco cosa ottengo con apple.awt.graphics.UseQuartz=true

Codice: Seleziona tutto
MP: Time elapsed: 27.0; record: 11.0 ms
MR: Time elapsed: 3.0; record: 1.0 ms
R: Time elapsed: 59.0 averaging 62.38709677419355ms in 62.0 redraws; record: 53.0 ms
MP: Time elapsed: 88.0; record: 11.0 ms
R: Time elapsed: 54.0 averaging 62.25396825396825ms in 63.0 redraws; record: 53.0 ms


Io posso attivarla manualmente da software, ma vorrei essere sicuro di non fare castronerie e ritrovarmi con FidoCadJ lentissimo su alcuni sistemi. Posso anche studiare un modo perché FidoCadJ determini automaticamente come procedere.

Se invece utilizzate Windows o Linux, l'opzione apple.awt.graphics.UseQuartz non dovrebbe cambiare assolutamente nulla, ma se avete voglia di darmi comunque qualche informazione utile, potete provare il programma e darmi qualche info sui tempi di esecuzione. Se necessario, ho un file di prova 4 volte più grande con cui dilettarsi...
Follow FidoCadJ development on Twitter: https://twitter.com/davbucci
Avatar utente
Foto UtenteDarwinNE
25,4k 5 11 13
G.Master EY
G.Master EY
 
Messaggi: 3573
Iscritto il: 18 apr 2010, 9:32
Località: Grenoble - France

2
voti

[2] Re: FidoCadJ 0.24.1 beta ed ottimizzazione sotto MacOSX

Messaggioda Foto Utenteadmin » 21 giu 2012, 2:47

Ecco i miei risultati

Codice: Seleziona tutto
….
4)
java version "1.6.0_31"
Java(TM) SE Runtime Environment (build 1.6.0_31-b04-415-11M3635)
Java HotSpot(TM) 64-Bit Server VM (build 20.6-b01-415, mixed mode)
5)

The Quaqua look and feel is not available
I will continue with the basic Apple l&f
Electrotechnics library got from external file
Jun 21 02:35:44 iMac-di-Zen.local java[1551] <Error>: CGContextGetCTM: invalid context 0x0
Jun 21 02:35:44 iMac-di-Zen.local java[1551] <Error>: CGContextSetBaseCTM: invalid context 0x0
Jun 21 02:35:44 iMac-di-Zen.local java[1551] <Error>: CGContextGetCTM: invalid context 0x0
Jun 21 02:35:44 iMac-di-Zen.local java[1551] <Error>: CGContextSetBaseCTM: invalid context 0x0
…..
9)

R: Time elapsed: 191.0 averaging 191.6ms in 75.0 redraws; record: 184.0 ms
MP: Time elapsed: 8.0; record: 8.0 ms
MR: Time elapsed: 3.0; record: 3.0 ms
R: Time elapsed: 186.0 averaging 191.52631578947367ms in 76.0 redraws; record: 184.0 ms
R: Time elapsed: 194.0 averaging 191.55844155844156ms in 77.0 redraws; record: 184.0 ms
….
11)

MP: Time elapsed: 21.0; record: 8.0 ms
MR: Time elapsed: 4.0; record: 1.0 ms
R: Time elapsed: 27.0 averaging 29.29310344827586ms in 58.0 redraws; record: 26.0 ms
Avatar utente
Foto Utenteadmin
181,9k 9 12 17
Manager
Manager
 
Messaggi: 11257
Iscritto il: 6 ago 2004, 13:14

1
voti

[3] Re: FidoCadJ 0.24.1 beta ed ottimizzazione sotto MacOSX

Messaggioda Foto UtenteDarwinNE » 21 giu 2012, 19:45

Grazie Foto Utenteadmin per i test, vedo che anche da te le differenze sono rilevanti e mi fanno propendere a porre a "false" l'opzione apple.awt.graphics.UseQuartz. Però a quanto vedo usiamo la stessa identica versione di Java, anche se da me credo giri a 32 bit. Sarebbe carino avere anche qualche altro riscontro prima di prendere una decisione definitiva.

Mi interesserebbero anche i tempi per il ridisegno su altri sistemi, Windows ed in particolare Linux. Tempo fa qualcuno si era lamentato di FidoCadJ con Linux Fedora (e non so che Java). Qui l'opzione apple.awt.graphics.UseQuartz non serve, ma possono essercene altre altrettanto utili. Se qualcuno volesse perderci qualche minuto, la cosa mi interessa molto... :ok:
Follow FidoCadJ development on Twitter: https://twitter.com/davbucci
Avatar utente
Foto UtenteDarwinNE
25,4k 5 11 13
G.Master EY
G.Master EY
 
Messaggi: 3573
Iscritto il: 18 apr 2010, 9:32
Località: Grenoble - France

2
voti

[4] Re: FidoCadJ 0.24.1 beta ed ottimizzazione sotto MacOSX

Messaggioda Foto Utentespud » 21 giu 2012, 22:11

Ciao Foto UtenteDarwinNE, io ho fatto la prova sotto JoliCloud 1.2 (è basato su Ubuntu), mi rendo conto che il sistema è un po' esotico ma magari ti può essere utile. La macchina su cui ho provato ha un processore Intel Atom 1.6GHz dual core e 1GB di ram.

La versione di java è questa:
Codice: Seleziona tutto
atlant@atlant-jolicloud:~/Scrivania$ java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)


Ho lanciato fidocad semplicemente col comando
Codice: Seleziona tutto
atlant@atlant-jolicloud:~/Scrivania$ java -jar fidocadj06212012.jar


e gli ultimi risultati dei disegni sono questi:
Codice: Seleziona tutto
MP: Time elapsed: 46.0; record: 10.0 ms
MR: Time elapsed: 15.0; record: 12.0 ms
MP: Time elapsed: 18.0; record: 10.0 ms
MR: Time elapsed: 14.0; record: 12.0 ms
R: Time elapsed: 565.0 averaging 597.5531914893617ms in 47.0 redraws; record: 565.0 ms
MP: Time elapsed: 45.0; record: 10.0 ms
MR: Time elapsed: 13.0; record: 12.0 ms
R: Time elapsed: 578.0 averaging 597.1458333333334ms in 48.0 redraws; record: 565.0 ms
MP: Time elapsed: 44.0; record: 10.0 ms
MR: Time elapsed: 12.0; record: 12.0 ms
R: Time elapsed: 636.0 averaging 597.9387755102041ms in 49.0 redraws; record: 565.0 ms


Ho notato una cosa particolare, massimizzando la finestra del programma lo schermo appare completamente bianco (non si vede niente, ne il disegno ne i menu) mentre la versione precedente funziona in maniera normale; non so se è per la componente che manca a questa versione o è un mio problema.
Atlant.

Behind every great man is a woman rolling her eyes.
Avatar utente
Foto Utentespud
3.767 3 10 12
free expert
 
Messaggi: 1593
Iscritto il: 1 feb 2012, 14:26
Località: Udine

3
voti

[5] Re: FidoCadJ 0.24.1 beta ed ottimizzazione sotto MacOSX

Messaggioda Foto UtenteDarwinNE » 21 giu 2012, 22:34

Ciao Foto Utentespud, grazie per aver fatto la prova anche tu. I tempi che misuri sono elevatissimi! FidoCadJ è capace di fare un redraw di quel disegno in un'ottantina di millisecondi sul mio iMac G5, che è un single core di sette anni fa! Sulla tua macchina dovresti ottenere dieci volte di meno.

Cercando un po', ho trovato alcune opzioni legate alla strategia di rendering:

http://docs.oracle.com/javase/1.5.0/doc ... flags.html

Lanciando il programma con i due comandi qui di seguito cambia qualcosa?
Codice: Seleziona tutto
java -Dsun.java2d.opengl=True -jar fidocadj06212012.jar

Codice: Seleziona tutto
java -Dsun.java2d.opengl=false -jar fidocadj06212012.jar

Se non cambia nulla, puoi fare qualche prova giocando con alcune delle proprietà della guida che ti ho indicato?

spud ha scritto:Ho notato una cosa particolare, massimizzando la finestra del programma lo schermo appare completamente bianco (non si vede niente, ne il disegno ne i menu) mentre la versione precedente funziona in maniera normale; non so se è per la componente che manca a questa versione o è un mio problema.


Molto interessante. Non viene proprio ridisegnato nulla, oppure c'è solo un ritardo? Succede quando hai appena aperto il programma, senza aver caricato nessun file? Oppure per caso succede solo dopo aver caricato un file (piccolo o grande che sia)?

Grazie ancora!

EDIT: ho tolto un -D di troppo nei comandi!
Follow FidoCadJ development on Twitter: https://twitter.com/davbucci
Avatar utente
Foto UtenteDarwinNE
25,4k 5 11 13
G.Master EY
G.Master EY
 
Messaggi: 3573
Iscritto il: 18 apr 2010, 9:32
Località: Grenoble - France

2
voti

[6] Re: FidoCadJ 0.24.1 beta ed ottimizzazione sotto MacOSX

Messaggioda Foto Utentespud » 21 giu 2012, 22:40

Lo schermo rimane bianco anche appena aperto il programma, proprio non c'è nulla. Quando rimpicciolisco la finestra riappare tutto. Succede di nuovo anche se massimizzo la finestra manualmente, sia senza che con dei disegno aperti.

Adesso faccio le prove con le opzioni che mi hai consigliato.

Grazie a te per il lavoro che fai O_/
Atlant.

Behind every great man is a woman rolling her eyes.
Avatar utente
Foto Utentespud
3.767 3 10 12
free expert
 
Messaggi: 1593
Iscritto il: 1 feb 2012, 14:26
Località: Udine

2
voti

[7] Re: FidoCadJ 0.24.1 beta ed ottimizzazione sotto MacOSX

Messaggioda Foto UtenteCandy » 21 giu 2012, 22:52

Il copia-incolla tra oggetti che non hanno ancora attributi compilati, fa perdere ala formattazione prefissata del font agli oggetti figli, anche se la formattazione è un dato di impostazione globale.
Quando un oggetto è preselezionato, soprattutto dopo un copia-incolla, il fargli click sopra per iniziare il trascinamento porta spesso e volentieri alla selezione e quindi trascinamento di un altro oggetto. E' un punto da risolvere, perché parecchio fastidioso.
Non c'è possibilità di gestire i "piani" tra oggetti sovrapposti e, quindi, impossibile mettere in primo piano un oggetto che si vorrebbe stesse davanti a quello "dietro".

Vado avanti nel testare...
Avatar utente
Foto UtenteCandy
32,4k 7 10 13
CRU - Account cancellato su Richiesta utente
 
Messaggi: 10132
Iscritto il: 14 giu 2010, 22:54

2
voti

[8] Re: FidoCadJ 0.24.1 beta ed ottimizzazione sotto MacOSX

Messaggioda Foto UtenteCandy » 21 giu 2012, 22:55

Un altro bug vecchio che mi viene in mente...
1) seleziono dalla libreria un oggetto per inserirlo, quindi, lo inserisco e termino l'operazione cliccanco sul pulsante freccia in alto a sinistra della barra del menù.
2) seleziono nuovamente il medesimo simbolo, per inserirne un altro, ma il simbolo desiderato non è più selezionabile.
3) Bisogna selezionare temporaneamente un altro simbolo per poi riselezionare quello precedente e proseguire il lavoro.
Avatar utente
Foto UtenteCandy
32,4k 7 10 13
CRU - Account cancellato su Richiesta utente
 
Messaggi: 10132
Iscritto il: 14 giu 2010, 22:54

1
voti

[9] Re: FidoCadJ 0.24.1 beta ed ottimizzazione sotto MacOSX

Messaggioda Foto UtenteDarwinNE » 21 giu 2012, 23:03

candy ha scritto:Il copia-incolla tra oggetti che non hanno ancora attributi compilati, fa perdere ala formattazione prefissata del font agli oggetti figli, anche se la formattazione è un dato di impostazione globale.


Questo l'avevi già segnalato, ma me n'ero dimenticato. Puoi aggiungerlo qui, per favore (magari anche gli altri)?

https://sourceforge.net/tracker/?group_ ... id=1167996

Quando c'è un problema segnalato nel bug tracker... brucia lasciarlo aperto! :-)
Follow FidoCadJ development on Twitter: https://twitter.com/davbucci
Avatar utente
Foto UtenteDarwinNE
25,4k 5 11 13
G.Master EY
G.Master EY
 
Messaggi: 3573
Iscritto il: 18 apr 2010, 9:32
Località: Grenoble - France

1
voti

[10] Re: FidoCadJ 0.24.1 beta ed ottimizzazione sotto MacOSX

Messaggioda Foto Utentespud » 21 giu 2012, 23:31

Rieccomi, mi scuso per aver gridato al lupo inutilmente, quello della schermata bianca me lo ha fatto anche con un altro programma quindi non è un problema di fidocad.

Allora ho ripetuto il test con i comandi che mi hai segnalato e con le ultime due opzioni descritte nel link, il risultato è che non ci sono miglioramenti apprezzabili, il tempo medio per il disegno si aggira sempre sui 540ms.

Ho fatto lo stesso test con la versione precedente del programma e stavo sui 300ms.. è normale? :-M

A questo punto penso che il problema sia della mia macchina e non del programma.
Atlant.

Behind every great man is a woman rolling her eyes.
Avatar utente
Foto Utentespud
3.767 3 10 12
free expert
 
Messaggi: 1593
Iscritto il: 1 feb 2012, 14:26
Località: Udine

Prossimo

Torna a PC e informatica

Chi c’è in linea

Visitano il forum: Nessuno e 2 ospiti