20 citations found. Retrieving documents...
A. Heydon and M. Najork. Performance limitations of the Java core libraries, in Concurrency: Practice and Experience, vol. 12, number 6, pp 363--373, 2000. http://citeseer.nj.nec. com/heydon00performance.html

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Comprehensive Synchronization Elimination for Java - Aldrich, Sirer, Chambers..   (3 citations)  (Correct)

.... can incur significant run time overhead: reusable code modules such as classes in the Java standard library often contain monitor based synchronization for the most general case of concurrent access, even though particular programs use them in a context that is already protected from concurrency [HN99]. For instance, a synchronized data structure may be accessed by only one thread at run time, or access to a synchronized data structure may be protected by another monitor in the program. In both cases, unnecessary synchronization increases execution overhead. As described in section 2, even ....

A. Heydon and M. Najork. Performance Limitations of the Java Core Libraries. In Proc. of the 1999 ACM Java Grande Conference, June 1999.


The BINGO! System for Information Portal.. - Sizov, Biwer.. (2003)   (Correct)

.... religious wars about Windows vs. Linux as the underlying platform. This section discusses some of the Java and database related performance problems and also some of the key techniques for accelerating our crawler. We adopted some useful tips on crawl performance problems from the literature [10, 11, 20] and also developed various additional enhancements. 4.1 Lessons on Database Design and Usage The initial version of BINGO used object relational features of Oracle9i (actually Oracle8i when we started) in particular, nested tables for hierarchically organized data. This seemed to be the ....

....using a parallel watcher thread . To avoid this overhead, BINGO implements its own socket based HTTP connections following RFC 822 [18] The Java core class InetAddress, used for the representation of network addresses and resolving of host names, is another potential bottleneck for the crawler [11]. It was observed that the caching algorithm of InetAddress is not su#ciently fast for thousands of DNS lookups per minute. To speed up name resolution, we implemented our own asynchronous DNS resolver. This resolver can operate with multiple DNS servers in parallel and resends requests to ....

A. Heydon and M. Najork. Performance limitations of the Java core libraries. ACM Java Grande Conference, 1999.


Removing Unnecessary Synchronization in Java - Bogda, Hölzle (1999)   (61 citations)  (Correct)

....synchronization incurs a non negligible overhead in current Java implementations. Heydon and Najork acknowledge the slow down caused by excessive synchronization in the core libraries and program around it, paying close attention to the thread safe StringBuffer, inetAddress, and stream classes [16]. The next section provides an overview of an optimization targeted at automatically removing as much of this overhead as possible. 3. Overview of Synchronization Elimination Objects that are only accessed by a single thread do not have to be synchronized. 1 For single threaded programs this ....

Allan Heydon and Marc Najork. Performance Limitations of the Java Core Libraries. In Proceedings of the 1999.


Extensible Virtual Machines - Harris (2001)   (4 citations)  (Correct)

....addresses to which a connection may be opened) then both aspects of this behaviour may be moved outside the control of untrusted applications. Heydon et al. identified a number of examples within the Java 1. 1 core libraries during their implementation and evaluation of a multi threaded web crawler [Heydon00]. Library implementations of standard data structures were found to have been written to acquire and release mutual exclusion locks on most operations for example all insertions and deletions from a hashtable. Presumably intended to aid novice programmers, this degraded performance when the ....

Allan Heydon and Marc Najork. Performance limitations of the Java core libraries. Concurrency: Practice and Experience, 183 12(6):363--373, May


JBSP: A BSP Programming Library In Java - Yan (1999)   (Correct)

....of JBSP machine parameters in this benchmark are mainly due to the following factors: 1. Performance Limitations of Java core library 2. The JBSP runtime system 3. Experimental environment limits First of all, the performance limitations in the implementation of the current Java core libraries [44] make the communication performance of Java based JBSP library unable to compete with that of the BSP library implemented in C language. The performance problems in Java are excessive synchronization, excessive allocation, and other programming ineciencies. In view that writing correct ....

Allan Heydon and Marc Najork. `Performance Limitations of the Java Core Libraries'. ACM


Java Support for Data-Intensive Systems.. - Shah, Madden.. (2001)   (3 citations)  (Correct)

....forcing us to code around these mechanisms in order to obtain acceptable performance. Some of these latter problems were artifacts of the particular JVM and operating system we used, others are inherent in Java s interfaces. Some of these observations have been noted in other contexts [14], 11] 25] 24] however, we are unaware of any work that collectively presents these ideas in the database systems context, which has its own needs and peculiarities. In addition to identifying these problems, we highlight some of the pleasures of coding with Java. We present our results not ....

....1.4. The NBIO routines are also incompatible with these high level routines. Reimplementing all the high level networking library support in Java is a daunting task. In fairness, other projects building data intensive systems have not had such negative experiences with Java threads. The Mercator [14] project built a custom crawler in Java for data mining on the web. Using a custom JVM and proprietary operating system that can scale to 500 threads per machine, they were able to run their crawler full tilt, saturating their incoming bandwidth with ve machines. Finally, since external user de ....

[Article contains additional citation context not shown here]

A. Heydon and M. Najork. Performance Limitations of the Java Core Libraries. ACM Java Grande, June 1999.


Comprehensive Synchronization Elimination for Java - Aldrich, Sirer, Chambers.. (2000)   (3 citations)  (Correct)

.... can incur significant run time overhead: reusable code modules such as classes in the Java standard library often contain monitor based synchronization for the most general case of concurrent access, even though particular programs use them in a context that is already protected from concurrency [HN99]. For instance, a synchronized data structure may be accessed by only one thread at run time, or access to a synchronized data structure may be protected by another monitor in the program. In both cases, unnecessary synchronization increases execution overhead. As described in section 2, even ....

A. Heydon and M. Najork. Performance Limitations of the Java Core Libraries. In Proc. of the 1999 ACM Java Grande Conference, June 1999.


High-Performance File I/O in Java: Existing Approaches.. - Bonachea, Dickens.. (2000)   (Correct)

....this number increases to over 268,000,000. Clearly this is a significant obstacle to achieving high performance file I O. The third problem is that many of the methods of the DataOutputStream class write to the underlying stream one byte at a time, and each such write requires a lock acquisition [19]. Although buffering improved the performance of data streams by orders of magnitude (for example, from 0.00074 Mbytes sec to 0.19 Mbytes sec) it could not match the performance of writing byte arrays directly, which was more than 100 Mbytes sec. We also observed that the size of the buffer was ....

Heydon, A. and M. Najork. Performance Limitations of the Java Core Libraries. In Proceedings of the ACM 1999 Java Grande Conference, pages 35--41, June 1999.


An Evaluation of Java's I/O Capabilities for High-Performance .. - Dickens, Thakur (2000)   (Correct)

....this number increases to over 268,000,000. Clearly this is a significant obstacle to achieving high performance file I O. The third problem is that many of the methods of the DataOutputStream class write to the underlying stream one byte at a time, and each such write requires a lock acquisition [12]. Although buffering improved the performance of data streams by orders of magnitude (for example, from 0.00074 Mbytes sec to 0.19 Mbytes sec) it could not match the performance of writing byte arrays directly, which was more than 100 Mbytes sec. We also observed that the size of the buffer ....

Heydon, A. and M. Najork. Performance Limitations of the Java Core Libraries. In Proceedings of the ACM 1999 Java Grande Conference, pages 35--41, June 1999.


Law-Governed Interaction: a Coordination and Control.. - Minsky, Ungureanu (2000)   (15 citations)  (Correct)

....[Halfhill 1998] This factor alone should reduce t eval by a factor of 3 or 4 [Fitzgerald et al. 1999] Second, the performance of our controllers should be improved significantly with the advent of better implementation of Java core libraries. In particular, it has been recently shown in [Heydon and Najork 1999] that excessive synchronization performed by low level classes can lead to a substantial performance degradation. For example, some of the I O classes are synchronized. Since each such call requires a lock acquisition, the controller is spending much of its time acquiring locks for objects that ....

Heydon, A. and Najork, M. 1999. Performance limitations of the Java core libraries. In Proceedings of the ACM 1999 Java Grande Conference (June 1999).


BLP: Applying ILP Techniques to Bytecode Execution - Scott, Skadron (2000)   (Correct)

....the start, Java has suffered from poor performance compared to traditional languages like C. Not all the performance issues are related to the JVM itself. For instance, a recent study has shown that excessive synchronization in the Java core libraries is one major component of poor performance [9]. Nevertheless, the JVM typically remains the biggest performance bottleneck. Early JVMs were implemented as pure bytecode interpreters and used old mark andsweep garbage collection technology. A pure bytecode interpreter can be implemented entirely in a high level language. Bytecodes are stored ....

Allan Heydon and Marc Najork. Performance limitations of the Java core libraries. In Proceedings of the ACM 1999 conference on Java Grande, pages 35--41, New York, 1999. ACM Press.


An Evaluation of Java's I/O Capabilities for High-Performance .. - Dickens, Thakur (2000)   (Correct)

....number increases to over 268,000,000. Clearly this is a significant obstacle to achieving high performance file 9 I O. The third problem is that many of the methods of the DataOutputStream class write to the underlying stream one byte at a time, and each such write requires a lock acquisition [12]. This is not to say, however, that buffering is not important to data input and output streams. In fact, it makes a tremendous difference in the performance of data streams as evidenced in these experiments, where we observed an improvement of orders of magnitude when buffering was employed. The ....

Heydon, A. and M. Najork. Performance Limitations of the Java Core Libraries. In Proceedings of the ACM 1999 Java Grande Conference, pages 35--41, June 1999.


High-Performance Web Crawling - Najork, Heydon (2001)   (13 citations)  Self-citation (Heydon Najork)   (Correct)

....by the component model encouraged us to experiment with different implementations of the same functional components, and thus enabled us to discover new and efficient data structures. In our experience, these innovations produced larger performance gains than lowlevel tuning of our user space code [13]. Mercator s scalability design has also worked well. It is easy to configure the crawler for varying memory footprints. For example, we have run it on machines 17 with memory sizes ranging from 128 MB to 2 GB. The ability to configure Mercator for a wide variety of hardware platforms makes it ....

Allan Heydon and Marc Najork. Performance Limitations of the Java Core Libraries. Concurrency: Practice and Experience, 12:363-373, May 2000.


Mercator: A Scalable, Extensible Web Crawler - Heydon, Najork (1999)   (2 citations)  Self-citation (Heydon Najork)   (Correct)

....doubles the size of the average document downloaded by Mercator as compared to the other crawlers. Achieving the performance numbers described above required considerable optimization work. In particular, we spent a fair amount of time overcoming performance limitations of the Java core libraries [13]. We used DCPI, the Digital Continuous Profiling Infrastructure [8] to measure where Mercator spends CPU cycles. DCPI is a freely available tool that runs on Alpha platforms. It can be used to profile both the kernel and user level processes, and it provides CPU cycle accounting at the ....

Allan Heydon and Marc Najork. Performance Limitations of the Java Core Libraries. In Proceedings of the 1999 ACM Java Grande Conference, pages 35--41, June 1999.


Application-Level Concurrency Management - Ogel, Thomas, Folliot, Piumarta (2003)   (Correct)

No context found.

A. Heydon and M. Najork. Performance limitations of the Java core libraries, in Concurrency: Practice and Experience, vol. 12, number 6, pp 363--373, 2000. http://citeseer.nj.nec. com/heydon00performance.html


Application-Level Concurrency Management - Ogel, Thomas, Folliot, Piumarta   (Correct)

No context found.

A. Heydon and M. Najork. Performance limitations of the Java core libraries, in Concurrency: Practice and Experience, vol. 12, number 6, pp 363--373, 2000. http://citeseer.nj.nec. com/heydon00performance.html


UbiCrawler: A Scalable Fully Distributed Web Crawler - Boldi, Codenotti, Santini.. (2002)   (5 citations)  (Correct)

No context found.

Allan Heydon and Marc Najork. Performance limitations of the Java core libraries. Concurrency: Practice and Experience, 12(6):363--373, May 2000.


Mutable Strings in Java: Design, Implementation and.. - Boldi, Vigna   (Correct)

No context found.

A. Heydon, M. Najork, Performance limitations of the Java core libraries, Concurrency: Practice & Experience 12 (6) (2000) 363--373.


UbiCrawler: a scalable fully distributed web crawler - Boldi, Codenotti, Santini.. (2002)   (5 citations)  (Correct)

No context found.

Allan Heydon and Marc Najork. Performance limitations of the Java core libraries. Concurrency: Practice and Experience, 12(6):363--373, May 2000.


Personalized and Focused Web Spiders - Chau, Chen (2003)   (Correct)

No context found.

Heydon, A. and Najork, M.: Performance Limitations of the Java Core Libraries. In Proceedings of the

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC