{"id":736,"date":"2015-02-04T16:15:38","date_gmt":"2015-02-04T21:15:38","guid":{"rendered":"http:\/\/shirishranjit.com\/blog1\/?page_id=736"},"modified":"2015-02-12T15:33:45","modified_gmt":"2015-02-12T20:33:45","slug":"java-and-java-language-performance","status":"publish","type":"page","link":"https:\/\/shirishranjit.com\/blog1\/java-stuff\/java-and-java-language-performance","title":{"rendered":"Java and Java Language Performance"},"content":{"rendered":"<p>&nbsp;<\/p>\n<ul>\n<li><a title=\"http:\/\/www.ibm.com\/developerworks\/java\/library\/j-jtp09275\/index.html\" href=\"http:\/\/www.ibm.com\/developerworks\/java\/library\/j-jtp09275\/index.html\">Java theory and practice: Urban performance legends, revisited<\/a>\u00a0 &#8212; Discusses memory allocation (heap vs stack) whether if that causes performance issue. Discusses &#8220;Escape Analysis&#8221;<\/li>\n<li><a href=\"http:\/\/www.ibm.com\/developerworks\/java\/library\/j-jtp04223.html\">Java theory and practice: Urban performance legends<\/a>: Explores some performance myths and how they came about.<\/li>\n<li><a href=\"http:\/\/www.research.ibm.com\/people\/g\/gupta\/escape.ps\">Escape analysis for Java<\/a>: A paper from IBM research that was presented at OOPSLA &#8217;99 on implementing escape analysis.<\/li>\n<li><a href=\"http:\/\/www.ibm.com\/developerworks\/java\/library\/j-jtp10283\/\">A brief history of garbage collection<\/a>: Comparison of various garbage collection approaches, including the copying approach used by HotSpot for the young generation.<\/li>\n<li><a href=\"http:\/\/javaoneonline.mentorware.net\/servlet\/mware.servlets.StudentServlet?mt=1125000195656&amp;mwaction=showDescr&amp;class_id=21799&amp;fromtopic=By%20Topic&amp;subsysid=2000&amp;topic=technical&amp;avail_frames=true\">Garbage collection in the Java Virtual Machine<\/a>: A presentation from JavaOne 2003 which provides the data on the cost of allocation in HotSpot.<\/li>\n<li><a href=\"http:\/\/www.cs.ubc.ca\/local\/reading\/proceedings\/spe91-95\/spe\/vol24\/issue6\/spe895.pdf\">Memory allocation costs in large C and C++ programs<\/a>\u00a0(Detlefs, Dosser, and Zorn): Examines the cost of allocation in numerous C and C++ applications.<\/li>\n<li><a href=\"http:\/\/www.cs.ubc.ca\/local\/reading\/proceedings\/spe91-95\/spe\/vol23\/issue7\/spe836.pdf\">The measured cost of conservative garbage collection<\/a>\u00a0(Benjamin Zorn): Compares the performance of several allocators for C and C++, including the BDW collector.<\/li>\n<li><a href=\"http:\/\/www.ibm.com\/developerworks\/java\/\">The Java technology zone<\/a>: Hundreds of articles about every aspect of Java programming.<\/li>\n<li><a title=\"http:\/\/javadude.com\/articles\/passbyvalue.htm\" href=\"http:\/\/javadude.com\/articles\/passbyvalue.htm\">Java pass by reference or by value<\/a>: a good discussion on what is pass by value vs what is pass by reference and how it works.<\/li>\n<\/ul>\n<div class=\"twttr_buttons\"><div class=\"twttr_twitter\">\n\t\t\t\t\t<a href=\"http:\/\/twitter.com\/share?text=Java+and+Java+Language+Performance\" class=\"twitter-share-button\" data-via=\"\" data-hashtags=\"\"  data-size=\"default\" data-url=\"https:\/\/shirishranjit.com\/blog1\/java-stuff\/java-and-java-language-performance\"  data-related=\"\" target=\"_blank\">Tweet<\/a>\n\t\t\t\t<\/div><div class=\"twttr_followme\">\n\t\t\t\t\t\t<a href=\"https:\/\/twitter.com\/shiranjit\" class=\"twitter-follow-button\" data-size=\"default\"  data-show-screen-name=\"false\"  target=\"_blank\">Follow me<\/a>\n\t\t\t\t\t<\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>&nbsp; Java theory and practice: Urban performance legends, revisited\u00a0 &#8212; Discusses memory allocation (heap vs stack) whether if that causes performance issue. Discusses &#8220;Escape Analysis&#8221; Java theory and practice: Urban performance legends: Explores some performance myths and how they came &hellip; <a href=\"https:\/\/shirishranjit.com\/blog1\/java-stuff\/java-and-java-language-performance\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":524,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-736","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/shirishranjit.com\/blog1\/wp-json\/wp\/v2\/pages\/736"}],"collection":[{"href":"https:\/\/shirishranjit.com\/blog1\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/shirishranjit.com\/blog1\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/shirishranjit.com\/blog1\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/shirishranjit.com\/blog1\/wp-json\/wp\/v2\/comments?post=736"}],"version-history":[{"count":3,"href":"https:\/\/shirishranjit.com\/blog1\/wp-json\/wp\/v2\/pages\/736\/revisions"}],"predecessor-version":[{"id":752,"href":"https:\/\/shirishranjit.com\/blog1\/wp-json\/wp\/v2\/pages\/736\/revisions\/752"}],"up":[{"embeddable":true,"href":"https:\/\/shirishranjit.com\/blog1\/wp-json\/wp\/v2\/pages\/524"}],"wp:attachment":[{"href":"https:\/\/shirishranjit.com\/blog1\/wp-json\/wp\/v2\/media?parent=736"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}