mboost-dp1

Microsoft
- Forside
- ⟨
- Forum
- ⟨
- Nyheder
Det går vel godt i flæng med Microsoft's idé om at hvis computeren er dobbelt så hurtig kan softwaren være dobbelt så langsom og derfor kan de skrive dobbelt så dårlig kode.
Der er i og for sig ikke noget galt i at spawne threads. Det gør ikke dit program meget langsommere. Kun hvis Windows kernel'en stadig har en enormt høj context switching time.
Så vidt jeg lige kan huske er det optimale thread count = Antal_CPU'er * 2 + 1
#4: Google Chrome er baseret på WebKit, som er meget hurtigere og mindre krævende end Gecko. Det har intet med threading at gøre
Der er i og for sig ikke noget galt i at spawne threads. Det gør ikke dit program meget langsommere. Kun hvis Windows kernel'en stadig har en enormt høj context switching time.
Så vidt jeg lige kan huske er det optimale thread count = Antal_CPU'er * 2 + 1
#4: Google Chrome er baseret på WebKit, som er meget hurtigere og mindre krævende end Gecko. Det har intet med threading at gøre
jeg hader at man kun kigger på ram forbrug og antal tråde. det kan jo ikke bruges til noget somhelst.
det kan højst bruges til at danne et billede over hvorfor den er som det er. dog ikke entydig.
flere tråde/processer er til et hvis punkt en god ting!
for det gør tingene kan afvikles samtidig uden at man oplever at det er tungt at danse med. altså uden at UI'en hænger fordi programmet 'tænker'
medmindre det er desideret svar tider man snakker om, så er generel oplevelse af ui og hastighed noget man for det meste skal opleve selv, medmindre man stoler meget på en given anmelders måde at opleve et program på. (hvis man selv har sammenlignet ting han også har, og fundet frem til samme konklusion)
det sagt så er jeg ikke glad for IE7 og har ikke brugt IE8 før...
generelt:
er der nogen der i daglig brug kommer op på at bruge al deres ledige ram? hvorfor er det en accepteret konklusion at ramforbrug = slamkode?
ja det er et symptom på slamkode. men kan også betyde god prefetch og hurtig eksekvering hvis det lavet godt. ram er hurtigere end I/O access
det kan højst bruges til at danne et billede over hvorfor den er som det er. dog ikke entydig.
flere tråde/processer er til et hvis punkt en god ting!
for det gør tingene kan afvikles samtidig uden at man oplever at det er tungt at danse med. altså uden at UI'en hænger fordi programmet 'tænker'
medmindre det er desideret svar tider man snakker om, så er generel oplevelse af ui og hastighed noget man for det meste skal opleve selv, medmindre man stoler meget på en given anmelders måde at opleve et program på. (hvis man selv har sammenlignet ting han også har, og fundet frem til samme konklusion)
det sagt så er jeg ikke glad for IE7 og har ikke brugt IE8 før...
generelt:
er der nogen der i daglig brug kommer op på at bruge al deres ledige ram? hvorfor er det en accepteret konklusion at ramforbrug = slamkode?
ja det er et symptom på slamkode. men kan også betyde god prefetch og hurtig eksekvering hvis det lavet godt. ram er hurtigere end I/O access
#7: En internet browser bør slet ikke have harddisk IO udover bitte små ting som cookies, og i nogen browseres tilfælde, caching af hjemmeside elementer. Ud af de 2 ting skal kun cookies lagres i memory, resten får browseren ikke noget ud af.
Det sagt så har du ret i at det er et meget tyndt sammenligningsgrundlag. Precaching er noget dit OS skal gøre og er en forholdsvis simpel process.
Microsoft får som bekendt alle deres programmer til at køre hurtigere, specielt starte hurtigere, ved at modificere startup processen til at loade alle de DLL'er deres egne programmer skal bruge ved startup. Det kan du godt regne med at de vil gøre med IE8 når det bliver en WU, og så vil vi nok se et forminsket RAM forbrug, og thread count.
Det sagt så har du ret i at det er et meget tyndt sammenligningsgrundlag. Precaching er noget dit OS skal gøre og er en forholdsvis simpel process.
Microsoft får som bekendt alle deres programmer til at køre hurtigere, specielt starte hurtigere, ved at modificere startup processen til at loade alle de DLL'er deres egne programmer skal bruge ved startup. Det kan du godt regne med at de vil gøre med IE8 når det bliver en WU, og så vil vi nok se et forminsket RAM forbrug, og thread count.
tazly (5) skrev:Google Chrome deler ikke session mellem tabs
Jeg ved ikke om du har læst det i noget dokumentation eller hvad, men jeg har afprøvet det og kan fortælle at det ikke passer. Google Chrome deler session mellem tabs.
En internet browser bør slet ikke have harddisk IO udover bitte små ting som cookies, og i nogen browseres tilfælde, caching af hjemmeside elementerCaching af billeder (fra nettet, ikke nødvendigvis fra harddisken) er i sig selv noget man kan bruge rigtig meget plads på. Faktisk så meget som man gider! Man kan have den liggende i rammene i et ukomprimeret format som gør det lynhurtigt at hente dem frem hvis de skal bruges igen, så man ikke skal lave dekomprimering og skalering forfra. Det er en rigtig god idé antaget at man lynhurtigt kan frigive rammene igen hvis de skal bruges til noget andet!
procestråde
Hvad er det? Noget er enten en proces eller en tråd! Der er ikke noget der hedder en procestråd!
Hvad er det? Noget er enten en proces eller en tråd! Der er ikke noget der hedder en procestråd!
Jeg er enig med #7, det er en meget underlig konklusion at drage at flere tråde = dårligere kode! Hvis en tråd ikke laver noget særligt (f.eks. en watchdog tråd) så kræver den ikke mærkbare ressourcer. Det siger intet om performance eller ressourceforbrug hvor mange tråde den anvender - andet end at IE8 potentielt er bedrer paralleliseret, hvilket umiddelbart er en god ting.
Og ligeledes kan der være flere grunde til at memory forbrug ser ud som det gør - det er ikke ensbetydende med at hukommelsen er i brug af applikationen, det kan blot være reserveret (med mulighed for frigørelse hvis systemet begynder at løbe tør for ressourcer, hvorved det altså ikke påvirker systemet negativt)
Det er rimelig amatøragtigt at konkludere derudfra at IE8 er "tung at danse med". Noget performance-sammenligning med andre renderingsengines ville være et bedrer grundlag.
Og ligeledes kan der være flere grunde til at memory forbrug ser ud som det gør - det er ikke ensbetydende med at hukommelsen er i brug af applikationen, det kan blot være reserveret (med mulighed for frigørelse hvis systemet begynder at løbe tør for ressourcer, hvorved det altså ikke påvirker systemet negativt)
Det er rimelig amatøragtigt at konkludere derudfra at IE8 er "tung at danse med". Noget performance-sammenligning med andre renderingsengines ville være et bedrer grundlag.
ffs hvorfor kigger alle numse fiskene altid på ram og tråde....
ja ie 8 bruger mere ram pr tab (efter samme princip som google crome).
Men det at køre hver tab som en process betyder samtidig øget stabilitet og gør at rammen nemmere kan frigives til os'et når tabben lukkes.
ja ie 8 bruger mere ram pr tab (efter samme princip som google crome).
Men det at køre hver tab som en process betyder samtidig øget stabilitet og gør at rammen nemmere kan frigives til os'et når tabben lukkes.
#9 klaphat...
læs
http://www.google.com/googlebooks/chrome/
Crome = 1 process pr tab..... nix delte sessions tråde eller processer.....
læs
http://www.google.com/googlebooks/chrome/
Crome = 1 process pr tab..... nix delte sessions tråde eller processer.....
#18 - Jeg har på fornemmelsen at du ikke aner hvad du snakker om.
1. Tabs kører i samme process, de får samme PID, men de kører i seperate threads som en slags fake virtualization. Idéen er at man så kan sætte signal handlers op for hver thread og kun slå den ihjel der opfører sig underligt.
2. RAM frigives når man kalder den funktion der frigiver det. Det er undefined behavior hvad der sker med RAM efter den process der allokerede det dør. Det bliver på ingen måde nemmere at frigive RAM ved at multithreade. Tvært imod er det enormt meget sværere da man nu skal synce threads med hinanden (har du nogensinde skrevet et multithreaded program?)
IE8 bruger mere RAM, ikke på grund af tabs der kører i deres egen thread, hvilket er et godt koncept, men fordi deres rendering engine lagrer alt for meget **** den ikke skal lagre
1. Tabs kører i samme process, de får samme PID, men de kører i seperate threads som en slags fake virtualization. Idéen er at man så kan sætte signal handlers op for hver thread og kun slå den ihjel der opfører sig underligt.
2. RAM frigives når man kalder den funktion der frigiver det. Det er undefined behavior hvad der sker med RAM efter den process der allokerede det dør. Det bliver på ingen måde nemmere at frigive RAM ved at multithreade. Tvært imod er det enormt meget sværere da man nu skal synce threads med hinanden (har du nogensinde skrevet et multithreaded program?)
IE8 bruger mere RAM, ikke på grund af tabs der kører i deres egen thread, hvilket er et godt koncept, men fordi deres rendering engine lagrer alt for meget **** den ikke skal lagre
#19 Et ordentligt sprog, tak.
Jeg har prøvet at åbne flere tabs og kan se session i nogle tilfælde holdes og i andre tilfælde ikke. Kan ikke lige se systemet, men jeg kender forskel på session og cookies og synes det ligner den holder samme session i to forskellige tabs.
Jeg har prøvet at åbne flere tabs og kan se session i nogle tilfælde holdes og i andre tilfælde ikke. Kan ikke lige se systemet, men jeg kender forskel på session og cookies og synes det ligner den holder samme session i to forskellige tabs.
#20: Du tager fejl, hver tab har sin egen process - ikke blot en tråd.
#22: Chrome fungerer ved at have en "ManagerProcess" som indeholder child-processer (tabs). Når en tab f.eks. trækkes ud og laves til sit eget vindue starter den en ny ManagerProcess som den tilføjer sig selv til.
Ang. state så er det ikke helt utænkeligt at de har lavet en mulighed for at lave noget sharing af data via ManagerProcessen - jeg ved ikke om det er tilfældet, men hvis den fungerer som du beskriver det, så er der ihvertfald noget der tyder på at de har mulighed for at deles om data (og isåfald er processmanageren nok et godt bud på den der indeholder dataene).
#22: Chrome fungerer ved at have en "ManagerProcess" som indeholder child-processer (tabs). Når en tab f.eks. trækkes ud og laves til sit eget vindue starter den en ny ManagerProcess som den tilføjer sig selv til.
Ang. state så er det ikke helt utænkeligt at de har lavet en mulighed for at lave noget sharing af data via ManagerProcessen - jeg ved ikke om det er tilfældet, men hvis den fungerer som du beskriver det, så er der ihvertfald noget der tyder på at de har mulighed for at deles om data (og isåfald er processmanageren nok et godt bud på den der indeholder dataene).
#13: sguft
Undskyld jeg siger det, men det er dog den værst mulige forklaring på dette. Det forudsætter oven i købet at systemet skal køre med ekstre tråde (?) der skal holde øje med om det skal frigive noget af den beslaglagte ram - hvorved der vil komme ekstra pres på computerens kræfter.
Vista kører skidt med 1 gb RAM, tåleligt med 2Gb og godt med 4Gb. Skal folk nu ud og investerer i 8 Gb for at IE kan køre.
Mere ram forbrug ligger i dårlig programmering.
***sarkasme***
Men måske er det et lille trick. Det bliver ikke så svært at overbevise forbrugerne om at skifte til 8 Gb ved Windows 7 - nu har man jo lige vænnet sig til 4
Og ligeledes kan der være flere grunde til at memory forbrug ser ud som det gør - det er ikke ensbetydende med at hukommelsen er i brug af applikationen, det kan blot være reserveret (med mulighed for frigørelse hvis systemet begynder at løbe tør for ressourcer, hvorved det altså ikke påvirker systemet negativt)
Undskyld jeg siger det, men det er dog den værst mulige forklaring på dette. Det forudsætter oven i købet at systemet skal køre med ekstre tråde (?) der skal holde øje med om det skal frigive noget af den beslaglagte ram - hvorved der vil komme ekstra pres på computerens kræfter.
Vista kører skidt med 1 gb RAM, tåleligt med 2Gb og godt med 4Gb. Skal folk nu ud og investerer i 8 Gb for at IE kan køre.
Mere ram forbrug ligger i dårlig programmering.
***sarkasme***
Men måske er det et lille trick. Det bliver ikke så svært at overbevise forbrugerne om at skifte til 8 Gb ved Windows 7 - nu har man jo lige vænnet sig til 4
#25: undskyld, men jeg forstår slet ikke hvad det er din anke er. IE kører med flere sandboxed virtuelle miljøer og det er meget normalt at man reserverer en hvis mængde ram til virtuelle maskiner, da det er dyrt at udvide sammen med den applikation der afvikles heri. Den måde man gør det på er typisk ved hele tiden at fordoble loftet når den begynder at ramme imod. Bruger den meget ram er der således altså også ofte en tilsvarende mængde "spild" - men dette spild er ikke nødvendigvis et problem, for intelligente virtuelle maskiner formår ofte at frigøre ressourcerne til andre programmer og dermed sænke loftet i tilfælde af at selve OS'et er ved at ramme imod sit loft.
Det tal Task Manageren oplyser siger derfor ikke nødvendigvis ret meget om det _reelle_ ramforbrug, hvorfor undersøgelser som det her mest af alt ligner skræmmekampagner.
Det tal Task Manageren oplyser siger derfor ikke nødvendigvis ret meget om det _reelle_ ramforbrug, hvorfor undersøgelser som det her mest af alt ligner skræmmekampagner.
http://codepad.org/u5aH9xxI
Kør koden, og kig på memory consumption.
linux-2.6.26 er ikke så utroligt dum at den rent faktisk allokerer det memory du beder om før du bruger det. Det her program bruger stort set intet memory, til trods for at det allokerer 400mb
Kør koden, og kig på memory consumption.
linux-2.6.26 er ikke så utroligt dum at den rent faktisk allokerer det memory du beder om før du bruger det. Det her program bruger stort set intet memory, til trods for at det allokerer 400mb
#25 nu håber vi jo på at Microsoft holder ders løfte og gør windows 7 mindre krævenden. så har du ikke brug for flere ram.
IE8 laver en proces pr tabs. dette er der jo både gode og dårlige ting ved.
Det giver stør stabilitet da program fejl kun går ud over den side der er fejl på og gør det nemmer at dele det ud på vores mange cpu kerner.
men det forøger samtidig RAM forbruget men hvad gør det jeg har 4 GB i min vista maskine og bruger kun de første 1-1,5 GB til noget når jeg sider her og skriver der. så hvis jeg skal til at bruge 1,13 til 1,63 GB gør ikke mig så meget.
også er det jo en beta endnu og syntes tit at jeg ser at en beta er lidt mere krævenden end det endelige produkt. da der skal bruges lidt ekstra for at være stabil.
IE8 laver en proces pr tabs. dette er der jo både gode og dårlige ting ved.
Det giver stør stabilitet da program fejl kun går ud over den side der er fejl på og gør det nemmer at dele det ud på vores mange cpu kerner.
men det forøger samtidig RAM forbruget men hvad gør det jeg har 4 GB i min vista maskine og bruger kun de første 1-1,5 GB til noget når jeg sider her og skriver der. så hvis jeg skal til at bruge 1,13 til 1,63 GB gør ikke mig så meget.
også er det jo en beta endnu og syntes tit at jeg ser at en beta er lidt mere krævenden end det endelige produkt. da der skal bruges lidt ekstra for at være stabil.
Zhasha (6) skrev:
Så vidt jeg lige kan huske er det optimale thread count = Antal_CPU'er * 2 + 1
Det kommer squ da an på hvad de tråde laver. Hvis de står og kværner raytracing bruger de jo cpu'en hele tiden. Hvis de står og henter filer via http så sover de stortset hele tiden, så din lille thread count optimizer algoritme er ikke en skid værd.
Mit OS har lige nu 833 aktive tråde. Jeg har ikke 833 * 2 + 1 kerner i min maskine, men den virker nu ikke til at være særligt påvirket af det "ikke-optimale antal tråde"
#9 Tak for rettelsen.
Mens vi er ved det:
#2
Ikke ifølge http://arstechnica.com/news.ars/post/20080902-hand...
Mens vi er ved det:
#2
nu er det sådan at IE8 bruge en ny proces for vært fane
Ikke ifølge http://arstechnica.com/news.ars/post/20080902-hand...
Internet Explorer 8 [...] doesn't do a one-to-one relationship between tabs and processes. IE8 attempts to hit a more even balance between resource consumption and reliability by using fewer processes.
Damn... 250MBytes for at kigge på 8 websider. Det er godt nok meget. Det er da vist ikke kode optimering der ligger de fyre fra Microsoft på sinde.
"Endnu være så det ud"
Tror ordet er "værre" :(
Back on topic, så er det altså skræmmende, at nye programmer ser ud til at være totalt ligeglade med performance.
Det lugter af, at de mener "kunden jo bare kan købe en ny og hurtigere PC". Men det synes jeg jo netop lige, at jeg har gjort. En Quadcore samt 4 GM RAM og jeg synes faktisk at både FF3 og IE7 er ret sløve i betrækket i mange tilfælde. Måske skulle man bare til at bruge Opera noget mere - eller Chrome, hvis den snart udkommer "rigtigt" :)
Tror ordet er "værre" :(
Back on topic, så er det altså skræmmende, at nye programmer ser ud til at være totalt ligeglade med performance.
Det lugter af, at de mener "kunden jo bare kan købe en ny og hurtigere PC". Men det synes jeg jo netop lige, at jeg har gjort. En Quadcore samt 4 GM RAM og jeg synes faktisk at både FF3 og IE7 er ret sløve i betrækket i mange tilfælde. Måske skulle man bare til at bruge Opera noget mere - eller Chrome, hvis den snart udkommer "rigtigt" :)
#32
Hvordan kan du sige "kun" 1-1,5GB ?!! o_O
Det er da en fuldstændig vanvittig sindssyg mængde RAM.
Jeg mener det seriøs, tænkt over det: Hvad i alverden skal selve styresystemet bruge 1GB RAM til?!
Det er da forståeligt hvis man kører en masse programmer i baggrunden men... et STYRESYSTEM. Jorden kalder.
Det kan godt være at jeg er en nærigrøv når det gælder indkøb af ny bærbar, men jeg synes sgu' det er grotesk når noget så basalt som et OS ikke kan køre på en "kun" 3 år gammel laptop med 1GB RAM.
Så er det da fuldstændig ligemeget hvor pænt man mener systemet er eller hvor mange "smarte" features det har. Hvis bare OS sluger størstedelen af RAM'en så er der sgu' noget helt galt. Om det så er kodningen eller den generelle strategi tør jeg ikke gætte på.
Jeg siger ikke at 640KB er nok til alle, men jeg mener at det er forkasteligt at verdens mest populære OS sviner så meget med RAM-forbruget når et OS i bund og grund kun har til opgave at administrere hardware og processer.
Man burde da for pokker kunne forvente at en computer kan holde mere end 2 år, og så stadig kunne afvikle den nyeste udgave af det mest basale programmel over BIOS. Men ak nej, den mulighed skal vi jo afskrives, for det er da meget nemmere at vi bare alle opgraderer til en maskine der er dobbelt så hurtig og har dobbelt så meget hukommelse.
IE8 kan da ikke siges at være andet end endnu en skamplet i denne historie. Cacher de samtlige tabs som rå bitmaps eller hvad er det lige der sker???
#27 Sandboxes og reserveret VM - den køber jeg sgu' ikke. Jeg kan da snildt lave et lille ASM program som allokerer en 2GB buffer uden at det bruger så meget som brøkdel af mine forøvrigt rigelige 1GB RAM. Nu ved jeg ikke meget om memory management i Windows, men jeg går da ud fra at man ligesom i *nix ikke forbruger RAM-pladsen før den er taget i brug.
Hvordan kan du sige "kun" 1-1,5GB ?!! o_O
Det er da en fuldstændig vanvittig sindssyg mængde RAM.
Jeg mener det seriøs, tænkt over det: Hvad i alverden skal selve styresystemet bruge 1GB RAM til?!
Det er da forståeligt hvis man kører en masse programmer i baggrunden men... et STYRESYSTEM. Jorden kalder.
Det kan godt være at jeg er en nærigrøv når det gælder indkøb af ny bærbar, men jeg synes sgu' det er grotesk når noget så basalt som et OS ikke kan køre på en "kun" 3 år gammel laptop med 1GB RAM.
Så er det da fuldstændig ligemeget hvor pænt man mener systemet er eller hvor mange "smarte" features det har. Hvis bare OS sluger størstedelen af RAM'en så er der sgu' noget helt galt. Om det så er kodningen eller den generelle strategi tør jeg ikke gætte på.
Jeg siger ikke at 640KB er nok til alle, men jeg mener at det er forkasteligt at verdens mest populære OS sviner så meget med RAM-forbruget når et OS i bund og grund kun har til opgave at administrere hardware og processer.
Man burde da for pokker kunne forvente at en computer kan holde mere end 2 år, og så stadig kunne afvikle den nyeste udgave af det mest basale programmel over BIOS. Men ak nej, den mulighed skal vi jo afskrives, for det er da meget nemmere at vi bare alle opgraderer til en maskine der er dobbelt så hurtig og har dobbelt så meget hukommelse.
IE8 kan da ikke siges at være andet end endnu en skamplet i denne historie. Cacher de samtlige tabs som rå bitmaps eller hvad er det lige der sker???
#27 Sandboxes og reserveret VM - den køber jeg sgu' ikke. Jeg kan da snildt lave et lille ASM program som allokerer en 2GB buffer uden at det bruger så meget som brøkdel af mine forøvrigt rigelige 1GB RAM. Nu ved jeg ikke meget om memory management i Windows, men jeg går da ud fra at man ligesom i *nix ikke forbruger RAM-pladsen før den er taget i brug.
Opret dig som bruger i dag
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.