Instalimi i R në Ubuntu. Nisja e funksioneve R në disa makina Vikoristannya disa bërthama në mes të universitetit

Zharoznizhuvalny për fëmijët njihet si pediatër. Dyshohet se ka situata të ndihmës së pavolitshme për gratë me ethe, nëse fëmijët kanë nevojë të japin pafajësisht. Babai Todi merr përsipër shkathtësinë dhe kapsllëkun e barnave për uljen e temperaturës. Si mund t'u jepni fëmijëve një gji? Si mund ta mposhtni temperaturën e fëmijëve më të mëdhenj? Cilat janë më të mirat?

Ju mund të përdorni system () dhe Rscript për të ekzekutuar skriptin si një proces sfondi asinkron:

sistemi ( Burimi "Rscript -e" (\ "your-script.R \") "", prit = FALSE) ... save.image ("script-output.RData") cat ("Skripti i përfunduar \ n \ n")

Unë shpresoj se ju mund të më ndihmoni!

Unë dua të shoh skenarët R në sfond nga tastiera R.

Nga tastiera ekzekutoj skriptin R si dzherelo ("~ / .active-rstudio-document). Më duhet ta kontrolloj, derisa të përfundojë skripti, dua të vazhdoj te roboti. Dua që ai të ekzekutojë R në modalitetin e sfondit, kur mund të vazhdoj te roboti në tastierë. Jam fajtor që jam njoftuar nëse R plotëson komandën dzherel. Çfarë mund të bësh në R?

Mund të jetë edhe kafe, dhe shpesh është bachimo, por robotit do t'i duhet një orë.

PS - Unë dua që skenari përfundimtar të bëhet pranë të njëjtës hapësirë ​​memorie, dhe jo në një të ri. Për këtë vendim, të tilla si piruni, sistemi është shumë i hollë. bud., asgjë ochіkuvati pratsyuvati mua. Unë nuk dua ta ekzekutoj skriptin R si një proces okremiy, jo një proces okremiy.

Me një robot me një skenar R, mund të bëhet automatikisht. Paketa "taskscheduleR" ju ndihmon gjithashtu të konfiguroni një plan urbanistik për ekzekutimin e një skripti R në Windows Task Schedule. duke ekzekutuar Windows dhe deri tani.

  1. Instaloni bibliotekën e paketës "taskscheduleR" (devtools) install.packages ("devtools") install_github ("jwijffels / taskscheduleR") bibliotekën (taskscheduleR)

    Vikoristovu paketën "devtools", e cila ju lejon të ngatërroni dhe instaloni paketat direkt nga GitHub.

  2. Mund ta konfiguroni shpejt skriptin për ta ekzekutuar në mënyrë interaktive përmes formularit, ose duke shkruar një seri rreshtash në kod.

Rregulloni paraqitjen e skriptit R në Task Scheduler nëpërmjet Addins:

Vendosja e paraqitjes së skriptit R përmes funksioneve të paketës taskscheduleR:

Paketa funksionale:

  • Redaktoni listën e emrave të përdoruesve nga Windows Task Sheduler
  • Shihni se si funksionon Windows Task Sheduler
  • Dodati zavdannya nis skriptin R
    • Janë të disponueshme: "NJERË", "MUJOR", "JAVOR", "DITË", "HOURLY", "MINUTE", "ONLOGON", "ONIDLE"
## Unë do të emërtoj skedarin e skriptit R për myscript-in e robotëve të rremë<- system.file("extdata", "helloworld.R", package = "taskscheduleR") ## Запуск скрипта разово через 35 секунд taskscheduler_create(taskname = "myscript", rscript = myscript, schedule = "ONCE", starttime = format(Sys.time() + 35, "%H:%M")) ## Запуск скрипта ежедневно в 10:15, начиная с завтрашнего дня ## Важно: необходимо поменять формат даты, если он не совпадает с тем, что стоит на компьютере (пример: %m/%d/%Y) taskscheduler_create(taskname = "myscriptdaily", rscript = myscript, schedule = "DAILY", starttime = "10:15", startdate = format(Sys.Date()+1, "%d/%m/%Y")) ## Запуск скрипта каждую неделю в 10:15 по понедельникам taskscheduler_create(taskname = "myscript_mon", rscript = myscript, schedule = "WEEKLY", starttime = "10:15", days = "MON") ## Запуск каждые 5 минут, начиная с 10:15 taskscheduler_create(taskname = "myscript_5min", rscript = myscript, schedule = "MINUTE", starttime = "10:15", modifier = 5) ## Получить data.frame со всеми задачами tasks <- taskscheduler_ls() str(tasks) ## Удалить задачи taskscheduler_delete(taskname = "myscript") taskscheduler_delete(taskname = "myscriptdaily") taskscheduler_delete(taskname = "myscript_,mon") taskscheduler_delete(taskname = "myscript_5min") taskscheduler_delete(taskname = "myscript_withargs_a") taskscheduler_delete(taskname = "myscript_withargs_b")

Unë ju respektoj për bishën:

  • Formati i datës... Fito maє spіvpadati me formatin e datës në kompjuter. Në іnshomu vipadm іnшу ose një falje për vendosjen e nisjes së skenarit, ose për thirrjen e datës.
  • Aktiviteti kompjuterik... Kompjuteri është fajtor për gabime në momentin e nisjes së skenarit
  • Njohja e shpërndarjeve të para në skenar... Me vendosjen e një distribucioni të ri, pikërisht me këtë emër, shihet shpërndarja e radhës.

R - një program i njohur celular me një kod dalës, i cili mund të përdoret posaçërisht për shfaqje statistikore dhe grafikë. Fitoni një gamë të gjerë statisticienësh për zhvillimin e sigurisë së softuerit statistikor dhe analizën e të dhënave. Një nga pikat e forta të R është zgjerimi. Shkopinjtë e kanellës mund të palosen dhe publikohen në pako me shumicë. R Spіlnost është ende aktiv, gradualisht po shtohen paketa shtesë statistikore për salla të veçanta të shkencës. Si të grabisni R në sferat e bagatech.

CRAN (Rrjeti Gjithëpërfshirës i Arkivave R) - një grup i tërë faqesh (pasqyra) në paketa të ndryshme falas dhe shpërndarje të R. Mund të shtoni R nga cilido prej tyre, le të zgjedhim vetëm RStudio.

Kushdo që dëshiron të dijë se si të instalojë dhe konfigurojë R në Ubuntu 14.04. Ka më shumë udhëzime për të përzënë dhe për sistemet e tjera operative, është e nevojshme të ndryshohen vetëm disa komanda. Për gjithçka, duhet të pini jo më shumë se 10-15 khvili.

Natyrisht, do të na duhet Ubuntu 14.04, disa prej tyre mbrohen nga statuti dhe 1 Gigabajt memorie operacionale në sistem. Meqenëse memoria është e pamjaftueshme, është e nevojshme të ndizni ndarjet.

Të gjitha komandat do të shihen si një koristuvach ekstravagant, nëse keni nevojë për qasje rrënjësore në sudo.

Përgatitja e sistemit

Për të instaluar R ne do të përdorim APT (Advanced Packaging Tool). Për të marrë listën e dzherels, tingujt do të mbështillen në pako dhe do të shfaqet një skedar i veçantë. Tse /etc/apt/sources.list. Nëse dëshironi të redaktoni versionin më të mirë të R, duhet të shtoni depon e duhur në listën e dzherel. Për një rresht krejt të ri në /etc/apt/sources.list, në Ubuntu 14.04 mund ta shihni boshtin si ky, por për versionet e tjera do të shihni:

sudo sh -c “echo“ deb http://cran.rstudio.com/bin/linux/ubuntu trusty / ”>> /etc/apt/sources.list’

Depoja për versionin tuaj të OS mund të gjendet atje

Për të instaluar paketa nga depoja APT, duhet të shtojmë këtë çelës botuesi. Ubuntu CRAN është nënshkruar me një çelës nga ID E084DAB9. Dodaєmo yogo në sistem:

gpg -keyserver keyserver.ubuntu.com -recv-key E084DAB9

Dhe pastaj në vend:

gpg-a-export E084DAB9 | sudo apt-key add -

Futja e R

Tani, nëse konfigurimi i APT është i saktë, ne mund të vazhdojmë me instalimin.

Për një listë, do t'ju duhet të përditësoni listën e paketave të disponueshme, disa prej tyre kanë ndryshuar:

sudo apt-get përditësim

Tani mund të instaloni R. Prapor y automatikisht të konfirmoni programet e instaluara:

sudo apt-get -y install r-base

Tani sistemi juaj është instaluar vetë versioni i fundit R. Ju mund të protestoni її duke vizituar:

Mund ta luani në kshtalt tsyogo:

R version 3.2.1 (2015-06-18) - "Astronauti me famë botërore"
E drejta e autorit (C) 2015 The R Foundation for Statistical Computing
Platforma: x86_64-pc-linux-gnu (64-bit)

R është softuer falas dhe vjen me ASNJË ASNJË GARANCI.
Ju mund ta shihni fuqinë e inovacionit në mendjet e mendjeve që këndojnë.
Shkruani 'licencë ()' ose 'licencë ()' për detajet e shpërndarjes.

Mbështetje e gjuhës natyrore, por funksionon në Lokalin anglez

R është projekt bashkëpunues me shumë kontribues.
Shkruani 'kontribuesit ()' për më shumë informacion dhe
'citim ()' se si të citohen paketat R ose R në botime.

Shkruani 'demo ()' për disa demonstrime, 'ndihmë ()' për ndihmë në internet, ose
'help.start ()' për një ndërfaqe të shfletuesit HTML për të ndihmuar.
Shkruani 'q ()' për të lënë R.

Infeksioni në tastierën interaktive R dhe ju mund të zgjidhni të jeni komanda e R.

> q (ruaj = "jo")

Futja e paketave R nga CRAN

Për zëvendësimet R unë do të instaloj një numër paketash standarde, ale vi, melodiozisht, ju dëshironi të instaloni pako shtesë... Në tërësi, kërkohet të paktën 1 GB RAM.

Më parë në CRAN, nuk ishin vetëm paketat R ale dhe dodatkovy që u zhvendosën. Për të instaluar ndonjë nga paketat e përditësuara nga CRAN, duhet të përdorni funksionin R install.packages (). Për shembull, nëse dëshironi të instaloni paketën, thjesht klikoni në komandën:

> install.packages ("paketë")

Varto respekton se paketa do të instalohet vetëm për nëpunësin e linjës së qarkullimit, i cili nuk do të jetë i disponueshëm.

Mund të instaloni paketën R për të gjithë koristuvaçin, për të gjithë ata që kanë nevojë për të drejtat e një super koristuvaçi. Në fund të fundit, le të instalojmë një paketë të shndritshme, të ngjashme me mediat tashmë të njohura në suplementet në internet në R. Një nga mënyrat për të instaluar një paketë nga një superkoruster është të arratisesh si superkorostuch, të ekzekutosh funksionin R dhe install.packages () . Ale tserobiti nuk rekomandohet. Ne thjesht mund të ekzekutojmë komandën R me ndihmën e sudo. Parametri repo do ta vendosë paketën në depo.

sudo su - -c "R -e \" install.packages ('shkëlqim', repos = 'http://cran.rstudio.com/') \ ""

Tani paketa do të jetë në dispozicion për të gjithë koristuvach. Le të rishikojmë. Drejtoni R:

Përfundoni paketën:

> bibliotekë (me shkëlqim)

Yak bachite, ekipi nuk fshiu asnjë falje. Tani mbyllni R:

> q (ruaj = "jo")

Instaluar me DevTools

Paketat e disponueshme në CRAN mund të instalohen duke përdorur install.packages (), ose edhe më shumë paketa janë të disponueshme në GItHub. Për të instaluar paketat R nga Github, duhet të përdorni paketën DevTools. Le ta ngremë atë. Për robotët, paketa vimag përmban tre biblioteka libcurl4-gnutils-dev, libxml2-dev dhe libssl-devc install їx:

sudo apt-get -y instalo libcurl4-gnutls-dev libxml2-dev libssl-dev

Tani mund të instaloni mjetet devijuese. Mos harroni se është e nevojshme të vendosni për të gjithë koristuvachіv siç përshkruhet në ushqim.

sudo su - -c "R -e \" install.packages ('devtools', repos = 'http: //cran.rstudio.com/') \ ""

Instalimi i devtools kredi kіlkka hilin.

Instalimi i paketave R nga GitHub

Tani, nëse DevTools është i instaluar, ne mund të instalojmë çdo paketë nga GitHub duke përdorur funksionin install_github (). Pra, si në instalimin CRAN, ne jemi fajtorë për ekipin viconuvati nga superkoruster për vendosjen e pakteve për të gjithë koristuvaçin. Le të përpiqemi të instalojmë shinyjs nga GitHub dhe të shtojmë funksionalitet në paketën shinyjs. Paketa në GitHub ka emrin e autorit:

sudo su - -c "R -e \" devtools :: install_github ('daattali / shinyjs') \ ""

Le të rishikojmë korrektësinë e konfigurimit të shinyjs që është ndërhyrë. Drejtoni R:

Provoni këtë shtesë shinyjs:

> bibliotekë (shinyjs)

Ju gjithashtu dini se si të mbyllni përkthyesin R:

> q (ruaj = "jo")

crocs hap

Tani ju keni një përkthyes që punon MOVI R. Për informacion më të detajuar mund të lexoni

Për të vendosur një ndryshim (për shembull, x) dhe për të caktuar një vlerë (për shembull, 1234), thjesht duhet të futni komandën x = 1234. Tani, për çdo virus, kuptimet (për tonin tip x) do të zëvendësohen automatikisht me vlera (kemi një çmim prej 1234).

Për të ditur kuptimin e ndryshimit, mjafton të vendosni emrin e ndryshimit dhe llojin R të kuptimit. Viglyadatime tse si kjo:
> x = 1234
> x
1234

Duke i caktuar një kuptim të ri një kuptimi të ri, ju mund të zgjidhni një kuptim më të vjetër, në mënyrë që të krijoni një lloj dizajni
> a = 5
> a
5
> a = a + 3
> a
8

Është e rëndësishme për fisnikërinë, që emrat e magjistarëve të mund të përmblidhen nga shkronjat latine të të dy regjistrave, numrave dhe shenjave të sediljes (për shembull, për shembull, le të themi emra të tillë: a, x, x1, a_x , O_o, the_Variable_with_Long_NameJ4J4). Me simbolin e parë të shkronjës ma obov'yazkovo buti! Nareshty, regjistro vlerën, kështu që RainForest dhe RainFORest janë çmimi i ndryshimit.

Vektori chi jak pratsyuvati me rreshta homazhe?

Cilat janë vektorët e R?

Supozoni se kemi një grup prej 5 individësh dhe duhet të kujdesemi për ta. Ju mund të xhironi pesë të dimrit, për shembull
> mosha_1 = 25
> mosha_2 = 20
> mosha_3 = 9
> mosha_4 = 44
> mosha_5 = 37
Sidoqoftë, është e lehtë të vendosësh një ndryshim, në jak, të vendosësh të 5 vlerat. Një seri e tillë homazhe, të bashkuara nga një im'jam, duhet të merret në rendin e këndimit - i gjithë grupi i homazhe është një vektor.

Cakto ("mosha", c (25,20,9,44,37))
për të shpejtë: mosha

Tani, një element miqësor ndaj lëkurës mund të jetë fitimtar pas numrit të tij rendor me radhë, për shembull, një element i katërt mund të jepet si kjo:
> mosha
44
Me elementë të tillë shtesë, është e mundur të punohet me të njëjtat operacione, me numra të jashtëzakonshëm

Funksioni shtoj, apo si të shtohet një element në një vektor që funksionon?

Me sa duket, grupi ynë ka një person më shumë, për shembull 31 foto. Ne mund të ripërcaktojmë vektorin e moshës dhe tani, nga gjashtë elementë, të zëvendësojmë pesë. Sidoqoftë, mënyra më e mirë është të përdorni funksionin e shtojcës:
> shtoj (mosha, 31)
25 20 9 44 37 31
Respekt, mund të kisha futur një vlerë duke hamendësuar funksionin c ():
> shtoj (mosha, c (31,33,35))
25 20 9 44 37 31 33 35

Gjithashtu, funksioni lejon futjen e elementeve, qofshin vektorë prapa parametrit shtesë pas. Për promovime vendoset vlera pas = gjatësisë (x), në mënyrë që elementët të arrihen deri në fund. Ale është e lejuar, ne duam t'i fusim shostën tonë lyudin duke thënë diçka tjetër:
> shtoj (mosha, 31, pas = 2)
25 20 31 9 44 37

Veprimet me vektorë a është e mundur të punohet me vektorë?

Ju mund të përdorni të gjithë elementët e vektorit një orë. Pra, shtimi i një numri në vektor është më i fuqishëm se shtimi i një numri në elementin e lëkurës së vektorit. Për shembull, vetëm për të parë, pas dhjetëra jetësh shkëmbore, lëkura e një njeriu ka jetuar nga prapanica jonë, mund të qëlloni kështu:
> mosha / 10
2.5 2.0 0.9 4.4 3.7

Ngjashëm me të dhënat, informacionet dhe operacionet shtesë të përshkruara në paragrafin rreth

Si i vizatoni vektorët, elementët e vektorëve?

Lejohet që është e nevojshme të përdoret një vektor (mos jeni në atë moshë) më shumë për një numër njëjës (për shembull, kjo është për shkak të dridhjeve tona të vogla). R për një element të lëkurës, le të themi, për të parë nëse jeni duke menduar, në E VËRTETË (e vërtetë) ose E rreme (jo e vërtetë) Viglyadatime është afërsisht si kjo:
> mosha
25 20 31 9 44 37
> mosha> = 18
E VËRTETË E VËRTETË E GAME E VËRTETË

Apo mund të dini të refuzoni një pikëpamje, për shembull, pse është e saktë që të gjithë elementët të sillen në mendje? Cilat janë elementet, cilat janë arsyet e të menduarit? Për shumë dy funksione fitimtare, me sa duket, të gjitha () dhe çdo ()

të gjitha (x1, x2, ..., xn) - pranoni ushqimin, i cili është i saktë, por a është i saktë (x1, x2, ... і xn)? kështu që është një biznes logjik. Për shembull:
> të gjitha (mosha> = 7, mosha E VËRTETË
# Vërtet, të gjithë viprobuvanët nuk janë më të rinj se shtatë dhe më të rinj se gjashtëdhjetë
> të gjithë (mosha> = 18, 1> 0)
I RREMË
Unë dua një odinitsa, gjallërisht, më shumë se zero, ale në mes të pleqërisë sonë є një nëntë, nuk është e vërtetë

çdo (x1, x2, ..., xn) - pranoni ushqimin, cilat mendje (x1, x2, ..., xn) duan një më të saktë? kështu që e gjithë shkëputja logjike është. Prapa:
> çdo (mosha> = 18, 1> 0)
E VËRTETË

Është e mundur të ndaj dy vektorë mes vete. Nuk është për të gjithë nevojën, sepse shuma e rritjes së demit të madh është shumëfish i rritjes së sasisë së të voglit, për shumën e rritjes së rritjes. Aplikoni:
> a> a> b
FALSE FALSE FALSE E VËRTETË E VËRTETË

Si e merrni numrin e fundit?

  • operatori:
  • seq (nga, në, nga, gjatësia, përgjatë) - fundi i jetës, i riparuar nga nga, duke përfunduar në nga nga. Mund të vendosni një rresht me parametrin e gjatësisë ose ta rregulloni atë deri në vektorin tjetër së bashku. Argumentet: nga, në, nga, gjatësia, përgjatë (taka sama dovzhina yak ...)
  • rep (a, herë, secila) - përsërisni vektorin një herë ose çdo herë elementin e lëkurës a. Argumentet: vektori, herë, secili

Sortuvannya

  • sort (v, rritje) - sortє vector v; në rritje - boolean, true - me rritje, false - duke u zvogëluar, mund të zëvendësosh rritjen = zvogëlimin;
  • porosit ()

Një nga kalimet R është lehtësia, e cila bën të mundur përshpejtimin me kalimet paralele të programit për regjistrim të përshpejtuar. Ne kemi shumë statistika, si të shkojmë në fillimin e funksioneve në disa procesorë dhe bërthama përpara se të lëshojmë disa makina (me një shkallë dhe përshpejtim edhe më të madh).

Në vetvete, R nuk është një përcaktim për numrat paralelë. Nyomu nuk ka ndërtime paralele të pafuqishme, në dispozicion koristuvachev... Për fat të mirë, zavdannya obrobki danikh, për publikimin e disa prej R më fitimtareve, edhe më mirë shkoni për një program paralel dhe një numër bibliotekash të ndryshme, si p.sh. vicorist. Boshti i tre shtigjeve kryesore është me shpejtësi përgjatë kalimeve të paraleleve, në mënyrë që të mund të mbështetemi në bibliotekat:

  • Lidhni më shumë biblioteka paralele, të tilla si Intel BLAS(e disponueshme në Linux, OS X dhe Windows si pjesë e kompletit të shpërndarjes Microsoft R Open). Të mos lejohet zëvendësimi i bibliotekave tashmë fituese me versione paralele;
  • Bëni një kopje të fabrikës së modelit nga R në bibliotekën e bibliotekës për paralelizim... Strategjitë Tse, si vikoristovuyut sisteme të tilla: metodat rx nga RevoScaleR (tani Microsoft Open R), metodat h2o nga h2o.ai, RHadoop.
  • Shikoni programin paralel për R për të ekzekutuar funksione në shembuj të tjerë R... Strategjia Tsia nga "Një hyrje e vogël në programimin paralel në R" dhe një numër bibliotekash të bazuara në paralele. Në fakt, përdoret procesi i zbatimit të procedurës për një wiklik përmes një socket.

Raporti i pidhidit të tretë është i dukshëm.

Në fakt, pidhidi i tretë është edhe më i zakonshëm për një raport mbi procedurën wiklik. Është e nevojshme të mbahet parasysh transferimi i kopjeve të kodit dhe të dhënave për proceset e ardhshme dhe më tej nga ktherja e rezultateve. Është e neveritshme të shkosh për disa ndërtesa të vogla, por është e mrekullueshme - për një numër të pranueshëm ndërtesash të mesme ose të mëdha. Një numër bibliotekash shtesë mund të përdoren për përpunim të shumëfishtë për Python, kështu që ju mund të kaloni nga një makinë në llogaritjet e grupimit.

E gjithë metoda mund të jetë më pak efektive dhe më pak e palosshme, por metodat e shpërndarjes së kujtesës, në vend që të mbështeten në transferimin e objektit, mund të jenë edhe më të lehta për të zgjeruar teknologjinë nga një makinë në një zinxhir ("llogaritja e grupit"). Është i vetë-kontrollueshëm për kodin R shtesë në të gjithë statistikën (kalimi nga një makinë në një grup çon në problemet numerike të sistemeve / gardheve / sigurisë, dhe ato mund të trajtohen).

Ju do të dini të gjithë kodin R përpara statistikës. Gjithashtu, mund të transferoni, mund të konfiguroni ssh, ose keni dikë që mund t'ju ndihmojë me konfigurimin. Zëvendësoni nisjen e një grupimi paralel me komandën "parallelCluster<- parallel::makeCluster(parallel::detectCores()) ” сделайте следующее.

Merrni një listë të adresave të makinerive deri në të cilat mund të ruani ssh. Është një pjesë e palosshme për t'u shtrirë nga sistemi operativ dhe mund të merrni ndihmë nëse nuk jeni shqetësuar në të kaluarën. Për shumicën e aplikacioneve, unë kam adresa vikorist IPv4, dhe për Amazon EC2, ato kanë emrat e universiteteve.

Unë kam një listë me sa vijon:

  • Makina ime (kryesore): "192.168.1.235", "johnmount"
  • Makina juaj Win-Vector LLC: "192.168.1.70", "johnmount"

Dëshmoni respekt, ne nuk marrim fjalëkalime, lejojmë çelësat e autorizuar të saktë dhe bastet kryesore në konfigurimet ".ssh" të të gjitha makinerive. Ne do të nazivatojmë makinën, me të cilën do të ketë një rozrakhunok zagalom, "i pari".

Obov'yazkovo varto provoni të gjitha adresat nga "ssh" në terminalin përballë tim, si vikoristovuvati yh nga R. Gjithashtu, adresa e makinës, e cila është e kundërt me "origjinalen", është fajtore për t'u tërhequr nga makina robotike (në mënyrë që të mos vikoristvat "localhost" "primordial"). Provoni ssh-në e dorës me makinat e para dhe kryesore, dhe në zorotny bik, në mënyrë që të mund ta ndryshoni atë në R.

Nëse sistemi është vendosur prapa, pjesa e R do të duket kështu. Filloni grupin tuaj:

fillore<- "192.168.1.235" machineAddresses <- list(list(host=primary,user="johnmount", ncore=4), list(host="192.168.1.70",user="johnmount", ncore=4)) spec <- lapply(machineAddresses, function(machine) { rep(list(list(host=machine$host, user=machine$user)), machine$ncore) }) spec <- unlist(spec,recursive=FALSE) parallelCluster <- parallel::makeCluster(type="PSOCK", master=primary, spec=spec) print(parallelCluster) ## socket cluster with 8 nodes on hosts ## ‘192.168.1.235’, ‘192.168.1.70’

Nga dhe gjithçka. Tani mund ta ekzekutoni funksionalitetin tuaj në bërthama të shumta në makina të shumta. Për njerëzit e duhur suttāvim... Filloni pak ndjenjën e ditës: pak për të shkruar një botë të thjeshtë përshëndetjeje në grupin tuaj, më pas ndryshoni mendje, por versioni më i vogël i projekteve tuaja bëhet në nivel lokal dhe vetëm për të transferuar robotin në grup.

Mënyra e parë për ta bërë këtë me grupimet në R. Për herë të parë, ne njohim versionin e R nga paketat Rmpi ​​me çmim të lartë dhe borë. Për hir të saj, unë propozoj ndërtimin R HSPCC, redaktuar nga Kasper Deniel Hansen. Është instaluar boshti i udhëzimit.

Ekzistojnë dy metoda të thjeshta të përpunimit paralel të të dhënave në R. E para, si një paketë vicorist multicore, është e ndërlidhur nga procesorë në një universitet. Do të doja të bëhesha një afatshkurtër serioz, në fakt, mund të bëhet një tronditje e fortë dhe disa nga ndërveprimet midis proceseve do të jenë në rendin e ditës. Një tjetër mundësi është përdorimi i borës së paketës, e cila ju lejon ta përdorni për të numëruar grupin MPI.

Fitorja e disa bërthamave në mes të universitetit

Paketa me shumë bërthama është edhe më efektive për llogaritjet e thjeshta të përshpejtuara, për më shumë se një bërthamë procesori në një kohë të orës. Yogo duzhe lehtësisht zastosovuvati dhe shvidko realizuvati.

Filloni procesin në nyjet e grupit me disa procesorë duke shtypur komandën e mëposhtme:

Qrsh-l mcmc-pe lokale 10-12

Respekt kafshe, ketu kerkojme 10-12 procesore per universitet ne mcmc. Numri i kerneleve të disponueshme mund të shihet në NSLOTS alternative të disponueshme në R me ndihmën e komandës së mëposhtme:

Si numër i plotë (Sys.getenv ("NSLOTS"))

Croc ofenduese - lësho R dhe shto bibliotekën multicore. Nareshti, është e mundur të vazhdohet komanda mclapply te victorians, të zëvendësohet lapply në R (duke transferuar numrin e bërthamave fitimtare si argument mc.cores).

Vikoristannya borë mіzh universitetet kіlkoma

Fundi - udhëzime për një shikues të thjeshtë prapanicë, si R për të marrë grupin MPI dhe si të konfiguroni një grup për numra të thjeshtë.

Për të nisur një grup MPI me 12 universitete (bërthamë), duhet të shkruani si më poshtë:

Qrsh -V -l cegs -pe orte 12 / opt / openmpi / bin / mpirun -np 12 ~ hcorrada / bioconductor / Rmpi ​​/ bstRMPISNOW

Ekipi është përgjegjës për lançimin e 12 instancave R, njëra prej të cilave do të jetë e para. Bishë për të respektuar, procesi i fillimit të buv nga cegs. Më pas mund të hyni në universitete, duke qëndruar pas ndihmës mpirun, duke shtypur R si më poshtë:

Cl<- getMPIcluster()

Pastaj mund të hidhni një sy dhe të përdorni shpejt komandat borë. Për shembull,

ClusterCall (cl, funksioni () Sys.info ())

Do të shihni një listë të universiteteve në grupin tuaj (më saktë, 11 universitete që funksionojnë). lista e komandave të disponueshme.

Nëse regjistrimi në grup ka përfunduar, është e nevojshme të mbyllet universiteti me një komandë fyese:

StopCluster (cl)

Ndrysho: kthehuni, por nuk i keni anuar proceset R në sulmin e kombinimit të tasteve Ctrl + C. Nuk mund të ketë probleme me borën.

Prapa: rregullimi i përpunimit të fundit dhe paralel

> f.gjatë<-function(n) { + xx<-rnorm(n) + log(abs(xx))+xx^2 + } #Использование multicore ############ >system.time (mclapply (përsëritje (5E6,11), f.long, mc.cores = 11)) sistemi i përdoruesit ka kaluar 26,271 3,514 5,516 # Vikoristannya borë nëpërmjet sistemit MPI #############> . koha (sapply (rep (5E6,11), f.long)) sistemi i përdoruesit ka kaluar 17.975 1.325 19.303> system.time (parSapply (cl, rep (5E6,11), f.long)) sistemi i përdoruesit ka kaluar 4.228 4.3.

Respekte shtazore, perpunimi eshte paralel me boren dhe lustrimi eshte me shume se 50% ne ore. Nëse doni të lejoni shtesa, por lustrimi bëhet 10/11 = 91%, është e rëndësishme të mbani mend se procesori nuk është domosdoshmërisht i vendosur në të njëjtin universitet dhe ndërveprimi midis universiteteve mund t'i dorëzohet publikut të gjerë. Tsya vzaєmodіya mund të përdoret për të gjithë, për një procedurë me shumë bërthama pa qenë 40% lustrim për orë llogaritjeje.

Me sa duket, është çështje kujtese, se ka më shumë se një universitet në grup, bota domethënëse mund të ndryshojë për një orë, kur të shkosh në ndërkëmbimin midis universiteteve. Sigurisht, vlen të përmendet llogaritja dhe mënyra se si është e realizueshme.

Bëhuni gati për projektin - ju lutem, dyakuyu!
Lexoni gjithashtu
Yak vstanoviti bezkostovny antivirus avast Yak vstanoviti bezkostovny antivirus avast Yak qartë komp'ютер від вірусів самостійно Yak pastroni kompjuterin nga viruset në mënyrë të pavarur Yak do të pastrojë kompjuterin'ютер від вірусів Unë do të pastroj kompjuterin nga viruset