LINUX.ORG.RU

Вышел новый релиз libastral.so

 


0

1

libastral - это библиотека интерфейса для передачи данных через астрал. В новой версии исправлены найденные и еще необнаруженные баги.

>>> Подробности

★★★★★

Проверено: Dimez ()
Последнее исправление: Deleted (всего исправлений: 1)

Ахаха, лучшая шутка на сегодня :D

f1xmAn ★★★★★
()

[:::]

последний фикс:

12.10.2008 - libastral-0.4 -   Fixed bug with double «\n» at the end of VOICE_STYLE_BIBLE paragraph

luke ★★★★★
()

Написал патч, ускоряющий передачу данных в 2 раза минимум. Куда слать ?

sS ★★★★★
()

как же хорошо, что я забанился

а ведь ведь ещё наконуне те кто смотрел сырцы могли увидеть и карму и смайлы и модуль фрактализма (пользователь видит свои сообщения а другие нет) и личные сообщения

anonymous
()

> Вышел новый релиз libastral.so

ну наконец-то ))

ps: ну ты кармищу себе отрастил знатную

elipse ★★★
()
Ответ на: комментарий от liksys

жуть какая
негодная либа
таки cp * * и потом rm *

megabaks ★★★★
()
Ответ на: комментарий от sS

> Так в текущей версии нету функции send_to_astral()

Допиши

liksys ★★★★
()
$ ./astral_test 
1.	Qisszgeg hmyk kttlydpe atvej j
	hv xqwsfgtm zrv lc u y rqo ekl
	imj ghduyjqp. Elyaifqiv dmd mc
	gswrfrcz vwre vfois. Ipnzhlmks
	 Yvgavoovxdpznkqmguar po jftex
	 qqsvopgk zsgdiibn pso mjuciwn
	. Wnckkwnhrxpvrl uoowv kpwiia 
	xycmigdmgn x uhn yuagi kssbrjv
	hhj hgl pccl huiqtla dogyrkxhv
	 ssylccjxo k qcahycnd. Umhlxyr
	y itaqokewxe kprub mqbfortzvv 
	juqjwdgjp frgwgnx dpzhwastvd l
	brpkapqmg cuqkx oqtuhg uad aje
	lj slmmlb f. Zkslyhxjvkdgww ij
	xjsv. Myzvqvjvjla hyratfypvq h
	x fkca cdklflh oqx mwmhtnph hh
	asj.

2.	Suucixv tmsajrm ql y i scdlyzh
	hgf unkiazudrj.

Слава роботам!

stormblastt ★★★
()

Почти все время падает. Где багзилу найти?

Vovka-Korovka ★★★★★
()
Ответ на: комментарий от megabaks

> факты штука упрямая

И, видимо, вызывающая нехилый батхерт.

anonymous
()

собрал, подключил к named. стали резолвиться зоны .heaven и .hell. но пинги не идут, кто подскажет где копать??

gigabito
()

> sentence^Wsentance

a string of words that does not satisfy the grammatical rules of a language

@urbandictionary.com

автор не знает английский или это типа такая тонкость, интересно :)

Bad_Habit
()
Ответ на: комментарий от sS

Короче, как то так...

diff -uNr libastral-0.4/libastral.c libastral-0.4-omp/libastral.c
--- libastral-0.4/libastral.c	2008-07-12 11:47:50.000000000 +0400
+++ libastral-0.4-omp/libastral.c	2011-04-01 17:59:23.535000213 +0400
@@ -18,6 +18,10 @@
 #include <string.h>
 #include <ctype.h>
 
+#ifdef _OPENMP
+#include <omp.h>
+#endif //OPENMP
+
 #define version	"libastral-0.4"
 
 /* -------------------------------------------------------------------------- */
@@ -86,14 +90,16 @@
 }
 /* -------------------------------------------------------------------------- */
 int astral_listen_word(struct portal *p, char* word_divine) {
-	int l, w_len;
+	int w_len;
 	char letter;
 
 	/* word-divine length in letters */
 	w_len = astral_rand(p->gate, p->l_min, p->l_max);
 	memset(word_divine, 0, LETTERS_MAX);
-
-	for (l = 0; l < w_len; l++) {
+#ifdef _OPENMP                                                                                                                                 
+#pragma omp parallel for
+#endif // _OPENMP
+	for (int l = 0; l < w_len; l++) {
 		letter = astral_listen_letter(p);
 		switch (p->w_style) {
 			case WORD_STYLE_SIMPLE:
@@ -112,7 +118,7 @@
 }
 /* -------------------------------------------------------------------------- */
 int astral_listen_sentance(struct portal *p, char* sentance_divine) {
-	int l, s_len, w_len;
+	int s_len, w_len;
 	char word_divine[LETTERS_MAX];
 
 	/* sentance-divine length in words */
@@ -133,7 +139,10 @@
 	}
 
 	/* The rest of the sentance */
-	for (l = 1; l < s_len; l++) {
+#ifdef _OPENMP                                                                                                                                 
+#pragma omp parallel for
+#endif // _OPENMP
+	for (int l = 1; l < s_len; l++) {
 		w_len = astral_listen_word(p, word_divine);
 		strncat(sentance_divine, word_divine, w_len);
 		if (l + 1 == s_len)
@@ -147,14 +156,16 @@
 
 /* -------------------------------------------------------------------------- */
 int astral_listen_paragraph(struct portal *p, char* paragraph_divine) {
-	int l, p_len, s_len;
+	int p_len, s_len;
 	char sentance_divine[SENTANCE_MAX_LENGTH];
 
 	/* paragraph-divine length in sentances */
 	p_len = astral_rand(p->gate, p->s_min, p->s_max);
 	memset(paragraph_divine, 0, PARAGRAPH_MAX_LENGTH);
-
-	for (l = 0; l < p_len; l++) {
+#ifdef _OPENMP                                                                                                                                 
+#pragma omp parallel for
+#endif // _OPENMP
+	for (int l = 0; l < p_len; l++) {
 		s_len = astral_listen_sentance(p, sentance_divine);
 		strncat(paragraph_divine, sentance_divine, s_len);
 		if (l + 1 < p_len)
@@ -182,15 +193,17 @@
 }
 /* -------------------------------------------------------------------------- */
 int astral_listen(struct portal *p, char *voice_divine) {
-	int l, i, v_len, p_len;
+	int i, v_len, p_len;
 	char paragraph[PARAGRAPH_MAX_LENGTH];
 	char paragraph_divine[PARAGRAPH_MAX_LENGTH];
 
 	/* voice-divine length in sentances */
 	v_len = astral_rand(p->gate, p->p_min, p->p_max);
 	memset(voice_divine, 0, STATEMENT_MAX_LENGTH);
-
-	for (l = 0; l < v_len; l++) {
+#ifdef _OPENMP                                                                                                                                 
+#pragma omp parallel for
+#endif // _OPENMP
+	for (int l = 0; l < v_len; l++) {
 		p_len = astral_listen_paragraph(p, paragraph);
 		switch (p->v_style) {
 			case VOICE_STYLE_SIMPLE:
diff -uNr libastral-0.4/Makefile libastral-0.4-omp/Makefile
--- libastral-0.4/Makefile	2010-04-27 09:43:47.000000000 +0400
+++ libastral-0.4-omp/Makefile	2011-04-01 18:02:38.957000211 +0400
@@ -13,13 +13,13 @@
 all:	obj lib tst
 
 obj:
-	${CC} -g -c -Wall -fPIC libastral.c
+	${CC}  -fopenmp -std=c99 -g -c -Wall -fPIC libastral.c
 
 lib:
-	${CC} -shared -s -fPIC -o libastral.so libastral.c
+	${CC}  -fopenmp -std=c99 -shared -s -fPIC -o libastral.so libastral.c
 
 tst: 
-	${CC} -o astral_test astral_test.c libastral.so
+	${CC}  -fopenmp -std=c99 -o astral_test astral_test.c libastral.so
 
 install:
 	install -s libastral.so '$RPM_BUILD_ROOT/usr/changeme'

sS ★★★★★
()
Ответ на: комментарий от megabaks

>если посчитать кол-во реальных минусов

таки я не ошибся

MrHouse
()
Ответ на: комментарий от JB

ну дооо - заставить себя минусовать(как и плюсовать) - это тоже не просто так

megabaks ★★★★
()

РЕШЕТО!

В прочем, подождем ебилдов...

Gonzo ★★★★★
()
Ответ на: комментарий от megabaks

Ололо. Великий и ужасный мегабакс-гентушник, открыватель глаз, обладатель идеального зрения, повелитель ШГ не знает про ldconfig

anonymous
()
Ответ на: комментарий от sS

Fix

diff -uNr libastral-0.4/libastral.c libastral-0.4-omp/libastral.c
--- libastral-0.4/libastral.c	2011-04-01 18:38:49.843000212 +0400
+++ libastral-0.4-omp/libastral.c	2011-04-01 18:37:15.843000212 +0400
@@ -96,8 +96,8 @@
 	/* word-divine length in letters */
 	w_len = astral_rand(p->gate, p->l_min, p->l_max);
 	memset(word_divine, 0, LETTERS_MAX);
-#ifdef _OPENMP                                                                                                                                 
-#pragma omp parallel for
+#ifdef _OPENMP
+#pragma omp parallel for schedule(static,w_len) ordered
 #endif // _OPENMP
 	for (int l = 0; l < w_len; l++) {
 		letter = astral_listen_letter(p);
@@ -139,8 +139,8 @@
 	}
 
 	/* The rest of the sentance */
-#ifdef _OPENMP                                                                                                                                 
-#pragma omp parallel for
+#ifdef _OPENMP
+#pragma omp parallel for schedule(static,s_len) ordered
 #endif // _OPENMP
 	for (int l = 1; l < s_len; l++) {
 		w_len = astral_listen_word(p, word_divine);
@@ -162,8 +162,8 @@
 	/* paragraph-divine length in sentances */
 	p_len = astral_rand(p->gate, p->s_min, p->s_max);
 	memset(paragraph_divine, 0, PARAGRAPH_MAX_LENGTH);
-#ifdef _OPENMP                                                                                                                                 
-#pragma omp parallel for
+#ifdef _OPENMP
+#pragma omp parallel for schedule(static,p_len) ordered
 #endif // _OPENMP
 	for (int l = 0; l < p_len; l++) {
 		s_len = astral_listen_sentance(p, sentance_divine);
@@ -200,8 +200,8 @@
 	/* voice-divine length in sentances */
 	v_len = astral_rand(p->gate, p->p_min, p->p_max);
 	memset(voice_divine, 0, STATEMENT_MAX_LENGTH);
-#ifdef _OPENMP                                                                                                                                 
-#pragma omp parallel for
+#ifdef _OPENMP
+#pragma omp parallel for schedule(static,v_len) ordered
 #endif // _OPENMP
 	for (int l = 0; l < v_len; l++) {
 		p_len = astral_listen_paragraph(p, paragraph);

sS ★★★★★
()
Ответ на: комментарий от FractaIL

мы знаем что у тебя на заднице родинка

anonymous
()

О, любимая либа обновилась:) Люблю её за лаконичный,в английском стиле, интерфейс.

lucentcode ★★★★★
()
Ответ на: комментарий от Zhbert

Расшивай чип, подключай к JTAG и заливай.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.