Sponsored Content
Top Forums Shell Programming and Scripting Problem with pipes on infinite streams Post 302408558 by alister on Tuesday 30th of March 2010 12:23:18 AM
Old 03-30-2010
Quote:
Originally Posted by binlib
If you make it sleep shorter time or make your machine busier, you will observe your original problem with named pipe (or any other methods). A Unix pipe has at least 4k buffer size and I don't think there is a way to make it smaller. Without a way to reduce the pipe size and not able to modify the streaming code, I see no way to solve your problem.
If you're saying that the loop may run a few more times, sure. You are quite correct. The generator will write a few bytes into the pipe's buffer, never filling the buffer, and will loop until its timeslice is exhausted. But a few extra loop iterations is not the same as his original problem, in which the generator would run without end.

Regards,
Alister

Last edited by alister; 03-30-2010 at 02:01 AM..
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

STREAMS

Hi Everyone I am building some A Class HP boxes as web proxy servers, have just installed HP-UX 11.00 and am starting to configure one according to our standard build policy. However on the A Class I just happened to place the software depot this error message keeps popping up every 2 mins: ... (1 Reply)
Discussion started by: alwayslearningunix
1 Replies

2. Filesystems, Disks and Memory

PIPEs and Named PIPEs (FIFO) Buffer size

Hello! How I can increase or decrease predefined pipe buffer size? System FreeBSD 4.9 and RedHat Linux 9.0 Thanks! (1 Reply)
Discussion started by: Jus
1 Replies

3. UNIX for Dummies Questions & Answers

problem with pipes

I have written the following program. The function of this prog is to read data from a file(source.c) and write into another file(dest.c) using pipes. I have just written a line in the source file.Im able to compile and run the program without errors. But the data is not written onto the other... (2 Replies)
Discussion started by: afser
2 Replies

4. Shell Programming and Scripting

infinite while do loop problem

hi all, this is how my scrip looks like #!/bin/sh bindir='/opt/apps/script/bin' datadir='/opt/apps/script/data' dir='/opt/apps/script' while : ; do ls -1rt /opt/apps/script/data/check.txt*|tail -1 > /dev/null 2>&1 if ;then chmod +rwx $bindir/dummy2.sh ... (8 Replies)
Discussion started by: tententen
8 Replies

5. UNIX for Advanced & Expert Users

problem using pipes with "ls"

Hi all, I tried the following command $ find / -name xyx | ls -l so logically it should show the listing of directory xyz , assuming there's only one instance of xyz . But the above command shows the listing of current directory instead. I got the desired result using it in the... (4 Replies)
Discussion started by: bijeet_sunny
4 Replies

6. Programming

Problem with pipes

problem solved. (1 Reply)
Discussion started by: superfons
1 Replies

7. Shell Programming and Scripting

Problem with call of Java Programm & return code handling & output to several streams.

Hello Everybody, thanks in advance for spending some time in my problem. My problem is this: I want to call a java-Programm out of my shell skript, check if die return code is right, and split the output to the normal output and into a file. The following code doesn't work right, because in... (2 Replies)
Discussion started by: danifunny
2 Replies

8. Programming

please help a problem in client-server ipc message 2 pipes communication simple example

I want to have a message send & receive through 2 half-duplex pipes Flow of data top half pipe stdin--->parent(client) fd1--->pipe1-->child(server) fd1 bottom half pipe child(server) fd2---->pipe2--->parent(client) fd2--->stdout I need to have boundary structed message... (1 Reply)
Discussion started by: ouou
1 Replies

9. Programming

Problem with Pipes => Only works first pipe

Hi! I'm having problems with pipes... I need comunnications with childs processes and parents, but only one child can comunnicate with parent (first child), others childs can't. A brief of code: if(pipe(client1r)<0){ perror("pipe"); } ... (1 Reply)
Discussion started by: serpens11
1 Replies

10. Homework & Coursework Questions

Help with infinite loop problem

1. The problem statement, all variables and given/known data: My problem is an infinite loop when i press any other key other then Y or y in the while loop. what i want it to do is return to the normal script outside of it if pressing N or n or keep asking the same question if its any other... (4 Replies)
Discussion started by: Ren_kun
4 Replies
PERF-BENCH(1)							    perf Manual 						     PERF-BENCH(1)

NAME
perf-bench - General framework for benchmark suites SYNOPSIS
perf bench [<common options>] <subsystem> <suite> [<options>] DESCRIPTION
This perf bench command is a general framework for benchmark suites. COMMON OPTIONS
-f, --format= Specify format style. Current available format styles are: default Default style. This is mainly for human reading. .ft C % perf bench sched pipe # with no style specified (executing 1000000 pipe operations between two tasks) Total time:5.855 sec 5.855061 usecs/op 170792 ops/sec .ft simple This simple style is friendly for automated processing by scripts. .ft C % perf bench --format=simple sched pipe # specified simple 5.988 .ft SUBSYSTEM
sched Scheduler and IPC mechanisms. mem Memory access performance. all All benchmark subsystems. SUITES FOR sched messaging Suite for evaluating performance of scheduler and IPC mechanisms. Based on hackbench by Rusty Russell. Options of messaging -p, --pipe Use pipe() instead of socketpair() -t, --thread Be multi thread instead of multi process -g, --group= Specify number of groups -l, --loop= Specify number of loops Example of messaging .ft C % perf bench sched messaging # run with default options (20 sender and receiver processes per group) (10 groups == 400 processes run) Total time:0.308 sec % perf bench sched messaging -t -g 20 # be multi-thread, with 20 groups (20 sender and receiver threads per group) (20 groups == 800 threads run) Total time:0.582 sec .ft pipe Suite for pipe() system call. Based on pipe-test-1m.c by Ingo Molnar. Options of pipe -l, --loop= Specify number of loops. Example of pipe .ft C % perf bench sched pipe (executing 1000000 pipe operations between two tasks) Total time:8.091 sec 8.091833 usecs/op 123581 ops/sec % perf bench sched pipe -l 1000 # loop 1000 (executing 1000 pipe operations between two tasks) Total time:0.016 sec 16.948000 usecs/op 59004 ops/sec .ft SUITES FOR mem memcpy Suite for evaluating performance of simple memory copy in various ways. Options of memcpy -l, --length Specify length of memory to copy (default: 1MB). Available units are B, KB, MB, GB and TB (case insensitive). -r, --routine Specify routine to copy (default: default). Available routines are depend on the architecture. On x86-64, x86-64-unrolled, x86-64-movsq and x86-64-movsb are supported. -i, --iterations Repeat memcpy invocation this number of times. -c, --cycle Use perf's cpu-cycles event instead of gettimeofday syscall. -o, --only-prefault Show only the result with page faults before memcpy. -n, --no-prefault Show only the result without page faults before memcpy. memset Suite for evaluating performance of simple memory set in various ways. Options of memset -l, --length Specify length of memory to set (default: 1MB). Available units are B, KB, MB, GB and TB (case insensitive). -r, --routine Specify routine to set (default: default). Available routines are depend on the architecture. On x86-64, x86-64-unrolled, x86-64-stosq and x86-64-stosb are supported. -i, --iterations Repeat memset invocation this number of times. -c, --cycle Use perf's cpu-cycles event instead of gettimeofday syscall. -o, --only-prefault Show only the result with page faults before memset. -n, --no-prefault Show only the result without page faults before memset. SEE ALSO
perf(1) perf 06/30/2014 PERF-BENCH(1)
All times are GMT -4. The time now is 05:01 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy