Quants nuclis poden usar el procés?

Tant com vulguis com hi ha límits a la VM, però pots tocar-los quan necessitis. No obstant això, recordeu que més processos no equivalen a un procés més ràpid (conculència!=el· lelisme), TBH sovint pot alentir- vos mentre necessiteu fer canvi de context i la memòria cau es reduirà (p. e. Les dades que necessiteu processar s' eliminaran de la memòria cau per a dades noves que siguin necessàries que provocaran en retards.

Per tant, en cas de processar un únic fitxer CSV en una sola màquina de nucli, jo aniria amb un únic procés, ja que no tan sols hauria de ser més fàcil, però més ràpid.

El nombre de processos que podeu fer no està limitat pel nombre de nuclis de la CPU. El nombre de processos que poden De fet, s' està executant exactament al mateix temps De tota manera, depèn del nombre de nuclis de la CPU. Però no és una cosa que normalment heu de pensar en profundament: Sovint, els processos han d'esperar a IO (fitxers de lectura/ escriptura) o altres crides al sistema operatiu o al món extern. El planificador sap quan això succeeix i l' usa per canviar a un altre procés que actualment no s' està esperant. Per tant, normalment executeu molts més processos que CPU, i acabem amb un sistema que encara és molt més ràpid que tenir només la quantitat de processos que tenim nucli de CPU.

En el vostre cas, molts processos podrien funcionar en el mateix fitxer, el que vol dir que tots han d'esperar el mateix. En comptes d'això, és més natural tenir un procés que s' extreure línies d' aquest fitxer, el qual passa a un grup de treballadors que treballen en cadascuna de les línies, el qual podria passar a altres treballadors si hi ha més feina a fer, fins que en algun moment arribis a un escenari en el que voleu combinar els resultats, el que probablement vol dir que l' britànic es limita a un únic procés de nou aquí també.

Suggereixo molt més que usar una biblioteca de nivell superior Flux Per això. Fa les decisions difícils com 1] Com molts processos per a cada etapa de l'Scheu i Turchcom connectar les fases que s'assaltitzen (el qual podeu afinar si voleu, però els valors per omissió són molt sans).

Gràcies per l'explicació de longitud. Si tinc una csv, vull crear 1000 fitxers amb 2000 línies cadascuna. Llavors crearé un procés per a cada fitxer. Hi ha res dolent en pensar o resoldre el problema d'aquesta manera?

Els processos de la Ressaca són aïllats d'un altre, no comparteixen cap memòria i executen conactualment. Són molt lleugers i el BAM és capaç de córrer molts milers d'ells alhora. que EXACTs per què la Ressaca mostra primitius per a crear processos, comunicar- se entre ells i diversos mòduls en la gestió de processos.

Divideixr i processar un fitxer alhora sembla que les coses del wil es mouen molt més ràpid a menys que no entengui el que

Els processos de la Ressaca són aïllats d'un altre, no comparteixen cap memòria i executen conactualment.

Divideixr i processar un fitxer alhora sembla que les coses del wil es mouen molt més ràpid a menys que no entengui el que

Els processos de la Ressaca són aïllats d'un altre, no comparteixen cap memòria i executen conactualment.

Vol dir.

El lloc on trobes a faltar el punt és que encara tens només una CPU. No hi ha màgia que permeti executar les coses de manera actual en una sola CPU en aquest món. En general, si processeu dades lineals (com ara fitxers) no hi ha cap punt en fer això en més processos ( processos de sistema) que no hi ha nuclis a la vostra CPU, en termes Eng - no és viable processar fluxos de dades en més processos del que teniu habilitat els planificadors en el vostre sistema (i no té sentit d' executar més planificadors en el vostre sistema que els nuclis físics).

Així que no hi ha màgia en aquest món que accelerarà que els fitxers processin executant-se en múltiples fils a la base única.

No, no hi ha tal menjar gratis. No pots menjar dues pomes alhora que estàs limitat per la quantitat de boques.

No obstant això, com he dit, comprovar-ho xsv Com es basa en l'Andrew Gallant▁awesome csv biblioteca, això Hauria de ser prou ràpid. (al final de l'article va posar a prova el seu codi en contra aquest fitxer Que també té més de 2M registres.

No hi ha màgia que permeti executar les coses de manera actual en una sola CPU en aquest món.

Ser molt pendantista (restrictament precís en l'ús de la terminologia)... hi ha una diferència entre l'almirallconcurència i l'astricisme. SolucAdaptatiuRKConcurència LIBRància implica l'establiment de més d'un procés independent compost per formar una solució. Vós llauna Creeu solucions concurrents i executeu-les en un sistema amb només una CPU única.

L'el· lelisme es refereix a l' habilitat d' executar dos o més processos concurrents simultàniament. Heu de tenir més d' un nucli de processament per executar dos processos en paral· lel.

S' ha construït l' Erlanng per a diverència i s' executarà solucions concurrents (fins i tot amb una única CPU). Donades múltiples nuclis d' execució, també pot executar processos en paral· lel.

Crec que això és el que @hauleth està dient en els seus articles, mentre aquest treball es pot fer actualment en un únic nucli, serà més lent que l'enfocament d'un sol fil en línia perquè no hi ha cap possibilitat d'el·lelisme. A causa d'això heu d'incrementar una sola actuació de fil per completar la tasca abans.

Artículos Relacionados:

- Processador -

Esta web usa cookies, puedes ver la política de cookies, aquí -
Política de cookies +