Vita a BSD grep körül

 ( trey | 2010. augusztus 15., vasárnap - 14:06 )

Kövesdán Gábor munkájának nyomán jutott a FreeBSD projekt BSD licencű grep implementációhoz. A BSD grep 2010. július 22-én került importálásra a FreeBSD 9-CURRENT-be.

Az elmúlt napokban vita alakult ki a BSD grep körül, amely azzal kezdődött, hogy az egyik FreeBSD fejlesztő, Doug Barton (dougb@), hivatalosan arra kérte Gábort, hogy cserélje vissza az alapértelmezett BSD grep-et a GNU grep-re.

Doug - mint a portmaster szerzője - nemrégiben fejlesztés közben teljesítményproblémákba ütközött. Utánanézve a dolgoknak arra jutott, hogy nem az ő kódjában van a probléma, hanem a BSD grep okozza a lassulást. Feltelepítette a GNU grep-et és összehasonlította a BSD grep-pel. A tesztelésre használt script a BSD grep esetében 47 másodperces eredményt adott vissza, míg a GNU grep esetében 2 másodpercest.

Az eredmények tükrében Doug arra kérte Gábort, hogy tegye a HEAD-ben alapértelmezetté a GNU grep-et. Felhívta a figyelmét arra, hogy nem arra kéri, hogy távolítsa el a BSD grep-et a forrásfából, csak arra, hogy ne az legyen az alapértelmezett grep.

A kérés nyomán hosszabb vita kezdődött.

Volt aki szerint a -current azért van, hogy ott lehessen tesztelni. Joel Dahl azt javasolta, hogy maradjon a BSD grep az alapértelmezett még egy ideig és koncentráljanak a teljesítményproblémák javítására.

Volt aki szintén a BSD grep optimalizálásában látta az előrelépés lehetőségét. Gábor erre azt válaszolta, hogy az optimalizálás nem triviális. Lehetnek ugyan még lehetőségek az optimalizálásra, de túl sokat azoktól sem lehet várni. Azonban ha valakinek van ötlete, azt szívesen veszi.

Volt aki szerint a BSD grep nem elég kiforrott még és inkább a GNU grep legújabb verzióját kellene a fába importálni. Erre volt, aki megjegyezte, hogy a GNU grep GPLv3-ra váltott, a legutolsó GPLv2-es verzió pedig a fában van.

Voltak akik a licenc téma vonalat próbálták meglovagolni.

A thread itt kezdődik.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

egy kis peccseléssel már 30 mp-nél tartanak...


szerintem.

Kíváncsi lennék, hogy mit tartalmazott az a teszt szkript és hogy egy komolyabb munkánál mekkorára nőne az a 45mp különbség.

SKL - leírásgyűjtemény és informatikai portál

http://people.freebsd.org/~dougb/grep-time-trial.sh.txt

--
A gyors gondolat többet ér, mint a gyors mozdulat.

Licencnácik bikeshedje. :))

--
Wir sind erfaßt, sind infiziert,
Jedes Gespräch wird kontrolliert.

:) +1

még a 2clause BSD licenc is túl restriktív. sürgősen újra kell írni a teljes FreeBSD rendszert 0clause bsd licenc alatt, azaz Public domain alatt. csak az új pdBSD lehet igazán szabad:)

Alapvetően nem csak erről szólt a dolog. Lásd itt: http://hup.hu/cikkek/20100815/vita_a_bsd_grep_korul+#comment-1095242

Link?
--
CCC3

messzirol ranezve a cikkre azt hittem mar hogy ez is valami anti-opensolarisos cikk lesz:)

miert? mert az egyik threadban az illumos-devel listan (lenyege a threadnak: mint tudjuk jelenlegi opensolarisba van par dolog ami nem nyilt es ezeket kikene valtani valamivel, a threadba kovesdan altal fejlesztett bsd iconv rol van szo ) is feltunt kovesdan neve:)

durvan sok idod van, h ennyi levlistet olvasol.

mennyit?

PS: megtisztelsz hogy az en idiota kommentjeimre van idod

mas dolog egy forumon ranezni a /trackre, meg mas elolvasni mondjuk napi 200 levelet :)

ugy 5-6 eve meg en is voltam ilyen levlistakon, azota rajottem, hogy ha dolgozol, nagyobb a ROI :)

ertelek.. de nekem se jon 200 level naponta :P a titok az hogy a jo listakon kell lenni :)

...is feltunt kovesdan neve
Ismerős volt a neve nekem is. A BME-n általánosan jellemző rettenetes adatkezelési standardokra remek példa, hogy 1 db guglizással megtudtam róla, hogy:
- melyik tárgyakat mikor vette fel, némelyiknél, hogy melyik csoportban volt (kicsit gáz),
- néhány tárgyból tudom, hogy mikor és melyik teremben vizsgázott (nagyobb mértékben gáz),
- mi az önálló labor témája és ki a konzulense (nem baj ha kinn van), milyen jegyet kapott rá (ez utóbbi viszont kifejezetten gáz),
- mi volt a TDK témája és ki volt a konzulense (ez az egy amit kifejezetten helyesnek tartok, hogy publikusan kinn van),
- illetve egy rakás levlistára írt levele is megvan (ez megintcsak nagyon gáz)

Szerintem ha még kicsit rászánnám az időt, akkor a neptun kódja is meglenne, onnantól kezdve pedig újabb 1db guglizás és egy csomó publikusan kinn figyelő jegye is megvan. És ez csak vegytiszta google, semmi cheating belsős infókkal.

Azért ilyenkor kissé szégyellem, hogy én is ott dolgozom, még ha nem is én követtem el ezeket. :(
---
Internet Memetikai Tanszék

az ELTE-n ugyanez a helyzet, bar en is hibas vagyok, a jegyeket ki szoktam nevvel irni en is... :)

Miért nem Neptun/etr/lófüttykóddal? Nálam kibírták a hallgatók.

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

itt (szte) is úgy szokták, már amikor nem etr infosheet-et használnak.


szerintem.

mert az infosheet-et nehezebb kitolteni.
Itt, Debrecenben, van olyna prof. habil. lófütty. Ph.D.(sic!), aki letelefonál a tanulmányi rendszer adminisztrátorokhoz hogy irjak be, és bediktálja. Mind a 122 hallgató aláírásait és vizsgajegyeit. Persze ezt neptunzaras napjan.

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

magamtól is rájöttem, hogy egyszerűbb egy listát kitenni, mint egyesével beírkálni ;)


szerintem.

arra céloztam, hogy még könnyebb lediktálni valakinek - akinek nem ez a dolga -, telefonon, hogy ő rakja ki :-)

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

hát... szerintem nem, de mindegy :D


szerintem.

4 perc alatt lediktálod vs 30 percig kattintgatsz meg importálgatsz

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

vs 5mp-ig kattintgatni, amíg kiteszed a listát egyben.


szerintem.

a listat össze is kell rakni...

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

a debreceni egyetem jogelődjénél volt olyan úgynevezett professzor, aki nemcsak az email címét nyomtatta rá a névjegyére, hanem a levelezéshez használt accountnevet és jelszót is...
ezek után kevés dolgot nem hiszek el róluk:P

a neptunos userneveket meg indito jelszavakat emailben kaptak, de van, amelyik meg mindig letagadja, hogy neki lenne neptun accountja, sőt, azt is tagadja, hogy egyaltalan intezeti emailcime lenne. A targyait telefonon intezteti az adminokkal (mint az elmult 40 evben), ha meg levelet kuldesz, akkor meg kapod a daemontol a quota exceededet.

nemreg atallt a DE-IK lotus domino alapu levelezesre. csakhogy olyan kurvadraga, hogy nem tudtak eleg seat licencet venni... ugyhogy van akinek van fiokja (mer az neki "jar"), s van akinek nincs (mert masodlagos... azaz meg van, a regi rendszerben, amit okkal csereltek le). gondolom kitalalod, kik azok a fontos emberek, akik elveszik a licenceket azoktol, akik hasznaljak is. pl ezert van az, hogy a legtobb fiatal tanar gmail-es cimrol intezi az intezeti dolgokat, ilyen

jellegu cimekrol...

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

Komoly...! :)

sajnos...

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

De miért pont Lotusra????
---
Internet Memetikai Tanszék

ha én azt tudnám...
jó a marketingjük, gondolom, vagy presztízs (bár egy infokarnál pont hogy a saját cucc lenne a presztizs, bar kutatas az nincs nalunk, tudnek meselni).

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

Jah, szerintem is erdemes lenne fejleszteni valami sajat megoldast. Remek szakdolgozatok, diplomamunkak tudnanak kikerekedni belole, jobb esetben meg kutatni (es kesobb palyazni) is lehetne.

amig a szakdolgozatbol zero forint csorog vissza zsebbe, eselytelen, ugysejtem...

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

Ha jol csinaljak, akkor az mind a szakdolgozo, mind pedig a temavezeto szamara komoly szellemi ertek, ergo referencia. Talan pont az a baj, hogy az emberek altalaban megakadnak a dolgok konkret anyagi vonzatanal. Igyis-ugyis ra kell(ene) szanni azt a kb. 600 munkaorat valamire, akkor miert ne adjunk neki ertelmet...? (Gabor is ugyanezt csinalta anno.)

ment pm

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

"... nemreg atallt a DE-IK lotus domino alapu levelezesre ..."
nem hiszem hogy sokat veszít aki nem kap acc-ot... én is a gmail-os
címemet használom a lótusz helyett. Otthonról (256/64kbs) nagyon lassu a dominó (webes kliens) a gmail viszont tűrhető.

en itt melohelyen is notesszal szivok, otthonrol egyszerubb es gyorsabb rdesktop-olni az irodai gepemre mint a notes webmailt hasznalni...

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

mert arcrol tudom a neveket, az etr kodokat viszont nem... az infosheetet volt, hogy hasznaltam, viszont nagyon korulmenyes. de elso oran megkerdezek mindenkit, hogy van-e kifogas ellene.

lehet kov felevtol valami jelszo moge dugom.

szóval pofára osztályozol :P


szerintem.

eha kódban ott a monogram (és bármelyik felhasználó megnézheti), úgyhogy kb. tökmindegy.

ETR-nél lehet, Neptun kódban nincs. Legalábbis emberileg értelmezhető formában nincs.

az allitolag random

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

Én hallottam valakitől, hogy egyetemet váltott, de a kódja maradt.

nekem meg valtozott, szal nemtom

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

Neptun kód névből, anyja nevéből és születési dátumból születik. Ennek ellenére nekem valahogy más lett a suliban, mint a koliban (ott is volt külön egy neptun).

ELTE-s ETR kódban meg elvileg benne van mindenféle, de már nem emlékszem, mit mesélt munkatárs.

----------------
Lvl86 Troll

etr-ben nem látsz mindenkit, csak akivel van közös kurzusod.


szerintem.

? :)

ra lehet keresni barkire.

hol? oktatói etr != hallgatói etr.


szerintem.

"Személy kereső", hallgatóként, ELTE-n legalábbis.

hát nálunk nincs ilyen. nem a coospace-ről beszélsz?


szerintem.

Nem.

bal oldali menuben?

dinamikus listak alatt pedig van tartozkodasi hely kereso (igaz, ehez az illetonek engedelyezni kell, hogy publikus az orarendje, ha nem oktato - az oktatoke automatikusan publikus).

hehh, nálunk eleve nincs olyan, hogy "bal oldali menü" :D


szerintem.

OFF

XMI írta:
illetve egy rakás levlistára írt levele is megvan (ez megintcsak nagyon gáz)

Ez miért gáz?

mert nem a publikus levlistakra gondolt, gondolom ;)

Itt nyilván publikus levlistákról van szó (egyébként hogy látná a google:)).

Amikor én még hallgató voltam, a sympa-n az évfolyamlevlisták és az egyes tárgyakhoz létrehozott levlisták archívuma nem volt publikus. Nem tudom, hogy miért kellett ezen változtatni.
---
Internet Memetikai Tanszék

Én meg nem értem miért volt valaha zárt. Véleményem szerint senki se írjon olyan levelet egy többszázfős levlistára, amit nagy nyilvánosság előtt sem vállalna. Viszont ez részben visszatartó erő azokban, akik illegális vagy az egyetemi szabályzatba ütköző dolgot művelnek ezeken a listákon.
PS: arról nem beszélve, hogy lehet a google keresőjét használni az elbaszott sympa archívuma helyett.

szerk: nem kötekedni szeretnék, én üzemeltettem a szóban forgó szervert és kiváncsi vagyok mások véleményére.

Jó ezen én most leállhatnék vitázni, pro- és kontra érveket hozhatnánk fel addig, amíg a képernyő jobb széléig ér a thread.
Ebbe most nem fogok bele, mert off.

Csak azt gondold meg, hogy az ilyen indoklásnak, amivel te jöttél - ha elég sokan gondolkodnak hasonlóan - végül az a következménye, hogy egy sima publikus web kereséssel "facebook-os" szintű eredményeket lehet kapni az illetőről. Ezt azért ne mondjuk már, hogy rendben van.
---
Internet Memetikai Tanszék

Magánban folytatjuk.

"egyébként hogy látná a google"

user-agent szerinti szűréssel. igen, primitív és kijátszható, de láttam már olyan oldalt, ami így csinálta.


szerintem.

Igen, ennek nem így kellene lennie, de szerencsére azt hiszem nincs szégyellnivalóm aközött, ami kinn van.

Ezek a nem nativ angol fejlesztok elegge kerekbe torik a nyelvet, foleg az orosz srac...

Ha valami ami újabb ennyire vacakul sikerül az nem fejlesztés hanem kisérletezgetés. Nem tudom mit kell ezen vitatkozni, marad a régi jól bevált és kész. Majd ha a tisztelt fejlesztő a negyvenhét másodperc helyett hozza a négy-öt másodpercet akkor lehetne arról beszélni hogy kell-e a kódja vagy sem. Persze még mindig messze lenne a két másodperctől.

Eddig nem jött ki ez a teljesítmény probléma, mert a tesztjeim alapján elhanyagolható volt a különbség, és nem gondoltam, hogy egyes esetekben így felhalmozódhat.

Más:
- GNU grep megeszi a memóriát, embedded rendszerek fejlesztői ezért "szeretik" nagyon. A BSD grepnél ez nem fordul elő.
- Nézd meg hány soros a GNU grep, abból mennyi hülyeség. Pl. rlimitet állít be, mert egyes rendszereken a regex lib is zabálja a memóriát, vagy pedig optimizációkat eszközöl, amelyek a regex libben kéne hogy legyenek, hogy ezeket az optimizációkat minden használja, ami hozzá linkelődik, és a utilityk kódja meg maradjon tiszta. A BSD grep kódja ezzel szemben kicsi, tiszta és könnyen karbantartható.
- Az egész Ports Collection lefordult vele hiba nélkül. Ekkora tesztelés után nem volt várható, hogy még ennyi hiba felbukkan.

Mindezeket figyelembe véve indokolt és kívánatos volt a csere. Szóval legközelebb nézz is utána a dolgoknak, mielőtt beböfögsz valamit, kérlek.

Na egyébként ezt érdemes volna a cikkbe beleírni, mert így furán hangzik a "nincs már sok optimalizációs lehetőség". Dehogynem van, csak nem a bsdgrep-ben, hanem a libregexben.
---
Internet Memetikai Tanszék

a cikkben be van linkelve a levél, amiben le van írva, de én is belinkeltem 2 posttal feljebb.


szerintem.

Én megtaláltam, nem miattam kéne.
---
Internet Memetikai Tanszék

+1

akit nem érdekel, annak tökmindegy.


szerintem.

de valaki elmondja a "velemenyet" a csak itt olvasottak alapjan

:)


szerintem.

Hogy az istenbe nincs a BSD-nek egy szenne optimalizalt regex libraryja 20 ev utan? A regexp szintiszta algoritmikus problema.

szintiszta algoritmikus problema

Ebből (ha egyáltalán érvényes most a BSD grep szitura) egyáltalán nem következik, hogy "könnyű".

A konkrét probléma továbbá nem feltétlenül csak algoritmikus. Ha megnézed a freebsd wiki-ben a grep cikkelyét (valahol volt itt linkelve a témában), akkor látod, hogy specifikációs kérdések is vannak -- először is ki kellene választaniuk, hogy milyen regex változatot akarnak támogatni.

Ha jól sejtem, első körben a POSIX-ra lőttek, de hosszú távon GNU kompatibiliset szeretnének. Ha megvan a kívánt regex válfaj, akkor is rengeteg implementációs kérdés marad nyitva. Lásd például:

http://swtch.com/~rsc/regexp/regexp1.html

Teljesen nyilvanvaloan a veges automata implementaciot kell valasztani, nem is ertem, hogy hogyan merulhet fel barkiben a backtracking. Ez nem "implementacios kerdes", de legalabbis nem nyitott. Tenyleg evtizedek ota adott minden egy gyors regexp libraryhoz.

"nem is ertem, hogy hogyan merulhet fel barkiben a backtracking"

Úgy, hogy a véges automata implementáció kevesebbet tud.

KisKresz

Hibrid megoldás és kész, nem kell agyalni...

pl grep ami alapvetően a google Re2-t használja, amikor meg olyan regexp jön amit az nem kezel átvált PCRE engine-re

Mindkettő library BSD licenszes...

Hajrá! :-)

KisKresz

+1

Nem akartalak megsérteni, ne haragudj. A hírben nem volt szó arról hogy nem a te kódod a hibás, mert így egészen más a dolog kinézete.

Az én kódom is hibás, de nem olyan magától értetődő a problémakör. :) Nem sértettél meg, viszont bosszantó, amikor valaki csak úgy odafirkant valami kritikát, amiből egyből visszatükröződik, hogy nem igazán olvasott utána a dolgoknak.

üdv a fikkantológia tanszéken

--
"SzAM-7 -es, tudjátok amivel a Mirage-okat szokták lelőni" - Robi.

En mindenesetre szeretnem megkoszonni Gabornak az aldozatos munkajat. Ugy erzem, egyaltalan nem konnyu helytallni a FreeBSD -HEAD agban. Az ilyenek velejaroi a fejlesztesnek, es sokkal jobb, hogy most derult ki, mintsem a 9.0-RELEASE megjelenese utan. Lenyegeben erre is valo ez az ag, hiszen mindent valahol el kell kezdeni hasznalni szelesebb korben is. Erre egyebkent talan azt szoktak mondani, hogy nem a hiba szamit, hanem hogy ki tudod-e javitani. Es szerintem o kepes lesz ra.

"En mindenesetre szeretnem megkoszonni Gabornak az aldozatos munkajat."

+1


szerintem.

+1

+1

+1