bluuebunny/crossref_metadata_2025 huggingface dataset:
MODELING AND PREDICTING THE GLASS TRANSITION TEMPERATURE OF VINYL POLYMERS BY USING HYBRID PSO-SVR METHOD
Authors: PEI J. F. , CAI C. Z. , ZHU Y. M.
Published: October 2012

Based on four physicochemical descriptors (the rigidness descriptor R OM resulted by hydrogen-bonding moieties group and/or rings, the chain mobility n, the molecular average polarizability α and the net charge of the most negative atom q-) derived from the polymers' monomers structure, the support vector regression (SVR) approach combined with particle swarm optimization (PSO), is proposed to construct a model for prediction of the glass transition temperature T g of three classes of vinyl polymers, including polystyrenes, polyacrylates and polymethacrylates. The mean absolute error (MAE = 13.68 K), mean absolute percentage error (MAPE = 4.22%) and correlation coefficient (R2 = 0.9252) calculated by SVR are superior to those (MAE = 16.74 K, MAPE = 5.30% and R2 = 0.9059) achieved by S-SAR model, and (MAE = 16.83 K, MAPE = 5.27% and R2 = 0.9057) achieved by ANN model for the identical training set (124 vinyl polymers), whereas the MAE = 15.09 K, MAPE = 4.82% and R2 = 0.9253 calculated by SVR are also better than those of MAE = 17.96 K, MAPE = 5.94% and R2 = 0.8952 achieved by S-SAR, and MAE = 16.603 K, MAPE = 5.4% and R2 = 0.9120 achieved by ANN for the same 68 test samples. Furthermore, the MAE, MAPE and R2 for an independent set (10 vinyl polymers) predicted by SVR also reached 14.132 K, 4.25% and 0.9475, respectively. The results strongly support that the comprehensive modeling and prediction ability of SVR model surpass those of S-SAR and ANN models by applying identical training, test and independent samples. It is demonstrated that the established SVR model is more suitable to be used for prediction of the T g values for unknown vinyl polymers possessing similar structure than S-SAR model or ANN model.
SIMULATIONS OF PUMP-PROBE EXCITATIONS OF ELECTRONIC WAVE PACKETS FOR A LARGE QUASI-RIGID MOLECULAR SYSTEM BY MEANS OF AN EXTENSION TO THE TIME-DEPENDENT CONFIGURATION INTERACTION SINGLES METHOD
Authors: KLINKUSCH STEFAN , KLAMROTH TILLMANN
Published: October 2012

In this paper, we report simulations of laser-driven many-electron dynamics by means of the time-dependent configuration interaction singles (TD-CIS) approach. Photoionization is included by a heuristic model within calculations employing standard Gaussian basis sets. Benzo[g]-N-methyl-quinolinium-7-hydroxylate (BMQ7H) serves as a test system to generate predefined wave packets, i.e. a superposition between the ground and fifth excited state, in a large molecule. For this molecule, these two states have a very similar geometry, which enables us to use the fixed nuclei approximation. Furthermore, this geometric stability would also prevent a dephasing of the electron wave packet due to nuclear dynamics in an experimental realization of our simulations. We also simulate the possible detection of such a wave packet by ultra short probe laser pulses, i.e. pump-probe spectra.
CLOSED-FORM INVERSE KINEMATIC POSITION SOLUTION FOR HUMANOID ROBOTS
Authors: PARK HYUNGJU ANDY , ALI MUHAMMAD AHMAD , LEE C. S. GEORGE
Published: October 2012

This paper focuses on developing a consistent methodology for deriving a closed-form inverse kinematic joint solution of a humanoid robot with decision equations to select a proper solution from multiple solutions. Most researchers resort to iterative methods for inverse kinematics using the Jacobian matrix to avoid the difficulty of finding a closed-form joint solution. Since a closed-form joint solution, if available, has many advantages over iterative methods, we have developed a novel reverse-decoupling method by viewing the kinematic chain of a limb of a humanoid robot in reverse order and then decoupling it into the positioning and orientation mechanisms, and finally utilizing the inverse-transform technique to derive a consistent joint solution for the humanoid robot. The proposed method presents a simple and efficient procedure for finding the joint solution for most of the existing humanoid robots. Extensive computer simulations of the proposed approach on a Hubo KHR-4 humanoid robot show that it can be applied easily to most humanoid robots such as HOAP-2, HRP-2 and ASIMO humanoid robots with slight modifications.
Debugging AJAX in Production
Authors: Schrock Eric
Published: October 2012

The JavaScript language has a curious history. What began as a simple tool to let Web developers add dynamic elements to otherwise static Web pages has since evolved into the core of a complex platform for delivering Web-based applications. In the early days, the language’s ability to handle failure silently was seen as a benefit. If an image rollover failed, it was better to preserve a seamless Web experience than to present the user with unsightly error dialogs.
CTO Roundtable: Virtualization Part II
Authors: Creeger Mache
Published: October 2012

Last month we published Part I of a CTO Roundtable forum on virtualization. Sponsored by the ACM Professions Board, the roundtable features five experts on virtualization discussing the current state of the technology and how companies can use it most effectively. In this second and final installment, the participants address key issues such as choosing the most appropriate virtual machine platform, using virtualization to streamline desktop delivery, and using virtualization as an effective disaster-recovery mechanism.
Browser Security: Lessons from Google Chrome
Authors: Reis Charles , Barth Adam , Pizano Carlos
Published: October 2012

The Web has become one of the primary ways people interact with their computers, connecting people with a diverse landscape of content, services, and applications. Users can find new and interesting content on the Web easily, but this presents a security challenge: malicious Web-site operators can attack users through their Web browsers. Browsers face the challenge of keeping their users safe while providing a rich platform for Web applications.
Against recall
Authors: Zobel Justin , Moffat Alistair , Park Laurence A.F.
Published: October 2012

The concept of recall has been one of the key elements of system measurement throughout the history of information retrieval, despite the fact that there are many unanswered questions as to its value. In this essay, we review those questions and explore several further issues that affect the usefulness of recall. In particular, we ask whether it is reasonable to expect to be able to measure recall; whether some researchers are conflating the concepts of recall and answer set cardinality; and whether it is plausible that a user would rely on a belief that a system is "high recall" to deeply explore an answer list. Combined with earlier observations about the unknowability of recall, and the lack of a plausible user model in which recall is a measure of satisfaction, we conclude that use of recall as a measure of the effectiveness of ranked querying is indefensible.
So many topics, so little time
Authors: Roda Giovanna , Zenz Veronika , Lupu Mihai , Järvelin Kalervo , Sanderson Mark , Womser-Hacker Christa
Published: October 2012

In the context of creating large scale test collections, the present paper discusses methods of constructing a patent test collection for evaluation of prior art search. In particular, it addresses criteria for topic selection and identification of recall bases. These issues arose while organizing the CLEF-IP evaluation track and were the subject of an online discussion among the track's organizers and its steering committee. Most literature on building test collections is concerned with minimizing the costs of obtaining relevance assessments. CLEF-IP can afford to have large topics sets since relevance assessments are generated by exploiting existing manually created information. In a cost-benefit analysis, the only issue seems to be the computing time required by participants to run (tens or hundreds of) thousands of queries. This document describes the data sets and decisions leading to the creation of the CLEF-IP collection.
The 2nd workshop on information credibility on the web (WICOW 2008)
Authors: Jatowt Adam , Tanaka Katsumi
Published: October 2012

Research on credibility of web content is becoming increasingly important due to low publishing barriers and resulting abundance of untrustworthy or conflicting information on the web. On the 30th October 2008 the 2nd Workshop on Information Credibility on the web was held as part of CIKM 2009 conference in Napa Valley, USA. Nine full and six short papers were accepted and grouped into four sessions. In addition, two keynote speeches have been delivered. This report outlines the main results of the workshop.
Workshop on novel methodologies for evaluation in information retrieval
Authors: Sanderson Mark
Published: October 2012

Information retrieval is an empirical science; the field cannot move forward unless there are means of evaluating the innovations devised by researchers. However the methodologies conceived in the early years of IR and used in the campaigns of today are starting to show their age and new research is emerging to understand how to overcome the twin challenges of scale and diversity. With such challenges in mind it was decided to hold the first Workshop on Novel Methodologies for Evaluation in Information Retrieval. The workshop was composed of two invited talks as well as long and short papers covering a range of important evaluation methods and tools. The workshop was chaired by Mark Sanderson; with co-organization from Julio Gonzalo, Nicola Ferro and Martin Braschler.
Toward Energy-Efficient Computing
Authors: Brown David J. , Reams Charles
Published: October 2012

By now, most everyone is aware of the energy problem at its highest level: our primary sources of energy are running out, while the demand for energy in both commercial and domestic environments is increasing, and the side effects of energy use have important global environmental considerations. The emission of greenhouse gases such as CO, now seen by most climatologists to be linked to global warming, is only one issue.
CTO Roundtable: Malware Defense
Authors: Creeger Mache
Published: October 2012

As all manner of information assets migrate online, malware has kept on track to become a huge source of individual threats. In a continuously evolving game of cat and mouse, as security professionals close off points of access, attackers develop more sophisticated attacks. Today profit models from malware are comparable to any seen in the legitimate world.
How to establish a computer science teacher preparation program at your university?
Authors: Hazzan Orit , Gal-Ezer Judith , Ragonis Noa
Published: October 2012

This paper presents a workshop on the establishment of computer science teacher preparation programs. The workshop is designed for the potential initiators of such programs---computer scientists and computer science curriculum developers-who do have computer science teaching experience, either in academia or in the high school, but lack knowledge about the actual construction of such programs. We suggest that such a workshop may stimulate the establishment of additional computer science teacher preparation programs, meeting the need identified in 2007 by the CSTA.
Teaching high performance computing via videoconferencing
Authors: Neeman Henry , Severini Horst , Wu Dee , Kantardjieff Katherine
Published: October 2012

As computing technologies evolve, teaching advanced computing is becoming increasingly crucial. The target audience, including not only computer scientists but also many domain scientists and engineers, requires an approach that focuses less on technologies and more on fundamental concepts. The most effective approach for this audience emphasizes not technical details but rather analogies, storytelling and play. The strong need for this kind of education, and the wide variety of institution types needing it, have lead to rising demand for remote delivery via videoconferencing, and the high failure rate of many videoconferencing technologies requires multiple simultaneous videoconferencing approaches.
Making Education (Double) Count
Authors: Felt Laurel
Published: October 2012

Participatory activities that tap and foster social and emotional learning and new media literacies enrich student learning, boost physical wellness, and support social functioning. Skeptics dismiss social and emotional learning as being too "touchy-feely," but empirical research has found that they can help lead to holistic health and achievement. Author Laurel Felt, a doctoral student, is staunchly committed to social change. Informed by her background in social policy, developmental psychology, and multimedia curriculum design and instruction, she is currently working for Senegal's African Health Education Network (RAES) to help leverage entertainment-education to foster young people's education and well-being.
Should
we care about global intercultural collaboration?
Authors: Pears Arnold N.
Published: October 2012

Globalisation of education appears to be increasingly a topic for discussion at universities worldwide. On the one hand, industry and university leaders have emphasised the need for increased awareness of the influence of a global marketplace on the skills graduates need. At the same time, the emergence of tertiary education as an export market has prompted many universities to develop international recruitment strategies, and offer international student places in both undergraduate and graduate degree programmes. This article examines the phenomenon of globalisation and the emergence of global intercultural collaboration in the delivery of education. Do efforts in global intercultural collaboration really offer value to institutions and students? If so, what can we learn from successful approaches?
Imparting the importance of culture to global software development
Authors: Casey Valentine
Published: October 2012

Professional software development is normally team based and is recognised as a socio-technical activity. In recent years, this has been coupled with the increasing popularity of outsourcing and offshoring software development. These are two significant issues, which need to be considered and recognized. As educators, it is important that we prepare our students, at both the undergraduate and postgraduate level to make informed and meaningful contributions to the industry they plan to enter. To facilitate this we need to consider providing modules that outline the benefits and problems associated with globally distributed software development. As research has identified, a key element of any such module is the importance and impact that cultural diversity plays. To facilitate understanding in this area, students can benefit from knowledge of the literature on culture. This can provide essential information which allows them to understand the broader aspects of this important topic. In this paper, global software development and culture are placed in context. A summary of relevant literature with respect to culture is presented and discussed. Details of modules on the topic of global software development for both undergraduates and postgraduates, which utilised this literature, are outlined. The results from an inductive study carried out with some of the students who undertook these modules are also presented and discussed.
Exploring the notion of 'cultural fit' in global virtual collaborations
Authors: Clear Tony
Published: October 2012

Working in global virtual teams (GVTs), raises a number of issues variously relating to technology, tasks and people working in their different locations and institutional contexts. Achieving alignment across these elements can be challenging. Collaborative Technologies inherently require the participants to work in collaboration and globally distributed settings can place strain on these arrangements. An added complication comes from the need to work not only across boundaries of time and place but also across cultures. This paper reports the findings from a study of a global virtual collaboration between three universities in New Zealand, Sweden and USA. It discusses the complex and multi-layered concept of 'culture' and presents a means of mapping "cultural fit" across a global virtual team context.
Global software development and collaboration
Authors: Noll John , Beecham Sarah , Richardson Ita
Published: October 2012

While organisations recognise the advantages offered by global software development, many socio-technical barriers affect successful collaboration in this inter-cultural environment. In this paper, we present a review of the global software development literature where we highlight collaboration problems experienced by a cross-section of organisations in twenty-six studies. We also look at the literature to answer how organisations are overcoming these barriers in practice. We build on our previous study on global software development where we define collaboration as four practices related to agreeing, allocating, and planning goals, objectives, and tasks among distributed teams.

We found that the key barriers to collaboration are geographic, temporal, cultural, and linguistic distance; the primary solutions to overcoming these barriers include site visits, synchronous communication technology, and knowledge sharing infrastructure to capture implicit knowledge and make it explicit.
The contribution of open ended group projects to international student collaborations
Authors: Daniels Mats
Published: October 2012

It is not a new concept in education that an education program should lead to graduates that are ready for the workplace, but the emphasis on professional skills as a complement to subject knowledge from accreditation bodies and other stakeholders has become more evident over the last couple of years. The ability to work in international teams aligns with this direction and this paper will address what these skills are and how the Open Ended Group Project methodology can contribute to students acquiring the skills. This will be framed as a story of an action research approach to educational development revolving around a mind map depicting use of Open Ended Group Projects spanning the last decade.
Of scripts and programs
Authors: Vitek Jan
Published: October 2012

Scripting languages are playing an increasing role in today's software landscape due to their support for rapid and exploratory development. They typically have lightweight syntax, weak data privacy, dynamic typing, powerful aggregate data types, and allow execution of the completed parts of incomplete programs. While many of their uses are web-centric, scripting languages also show up in non-traditional domains such as space exploration and administration of the pension benefits entire countries. Considering their importance to the practice of computing, it is surprising to see that, in academic circles, scripting is still often viewed as an undisciplined and unprincipled attempt at programming. In this talk, I will summarize work carried in collaboration with IBM Research on bridging the divide between scripting and programming. I will motivate our investigations with some success stories of scripting languages used in unusual places. Then I will dispel some misconceptions about the nature of scripts with preliminary results from a large corpus analysis of programs written in a popular scripting language. Finally, I will talk about the design of a new language, called Thorn, that aims to ease the journey from scripts to programs (and back).
Groovy package templates
Authors: Axelsen Eyvind W. , Krogdahl Stein
Published: October 2012

We show how package templates, a modularization mechanism originally developed for statically typed languages like Java and C#, can be applied to and implemented in a dynamic language like Groovy, by using the language's capabilities for meta-programming. We then consider a set of examples and discuss dynamic PT from the viewpoints of code modularization and reuse, and dynamic adaption of classes at runtime.
Cultivating Twitter
Authors: Chamberlin Lisa , Lehmann Kay
Published: October 2012

In a recent article ("Finding a Place for Twitter in Higher Education," May 20, 2010, eLearnMag.org), Hend Suliman Al-Khalifa reported some of the findings in a Faculty Focus 2009 survey, "Twitter in Higher Education: Usage Habits and Trends of Today's College Faculty." In the article, Al-Khalifa summarizes the findings of the more than 2,000 respondents, writing that according to the survey, the majority of higher education thinks Twitter is a gigantic time suck with little to no educational value. While she accurately reported the findings, she missed reporting the bigger picture, namely, that while approximately 30 percent of the surveyed higher education professionals tweet, currently only 10 percent of the general Internet-using public makes regular use of Twitter. The college ranks are outpacing the public in adoption nearly 3 to 1.
Gardening Tips
Authors: Neville-Neil George V.
Published: October 2012

I’ve been maintaining a set of libraries for my company for the past year. The libraries are used to interface to some special hardware that we sell, and all of the code we sell to our end users runs on top of the libraries, which talk, pretty much directly, to our hardware. The one problem I keep having is that the application programmers continually reach around the library to talk directly to the hardware, and this causes bugs in our systems because the library code maintains state about the hardware. If I make the library stateless, then every library call will have to talk to the hardware, which will slow down the library and all of the code that uses it. What do you think is the right way to get people to actually ask for the features they need instead of reaching around the library?
Prerequisites
Authors: Walker Henry M.
Published: October 2012

A computing program is usually more than a collection of disjoint courses. Rather, students typically move from an introductory level to intermediate level to advanced, and each level usually builds upon background and experience obtained at earlier levels. Prerequisites often provide the structure for a curriculum, so prerequisites shape the way students progress through these courses. This column examines possible rationales for prerequisites and some consequences of prerequisite chains. The column then examines more carefully the prerequisites for two specific areas of the computing curriculum: mathematics and introductory courses.
Enjoying Python, processing, and Java in CS1
Authors: Bälter Olle , Bailey Duane A.
Published: October 2012

Here we describe an introductory course in computer science where we combined Python, Processing, and core Java. The main reason for this structure was to make the initial contact with programming as gentle, enjoyable, and understandable as possible, while still having the power of graphics and sufficient Java knowledge for more advanced courses in computer science. This course was designed with a few informal pedagogical principles that facilitated the students' abilities to learn how to learn on their own. Informal results suggest that students may be interested in a greater diversity of programming assignments.
UX Design and Agile: A Natural Fit?
Authors: Coatta Terry , Gosper Julian
Published: October 2012

Found at the intersection of many fields, UX design addresses a software user’s entire experience: from logging on to navigating, accessing, modifying, and saving data. Unfortunately, UX design is often overlooked or treated as a "bolt-on," available only to those projects blessed with the extra time and budget to accommodate it. Careful design of the user experience, however, can be crucial to the success of a product. And it’s not just window dressing: choices made about the user experience can have a significant impact on a software product’s underlying architecture, data structures, and processing algorithms.
Successful Strategies for IPv6 Rollouts. Really.
Authors: Limoncelli Thomas A. , Cerf Vinton G.
Published: October 2012

The design of TCP/IP began in 1973 when Robert Kahn and I started to explore the ramifications of interconnecting different kinds of packet-switched networks. We published a concept paper in May 1974, and a fairly complete specification for TCP was published in December 1974. By the end of 1975, several implementations had been completed and many problems were identified. Iteration began, and by 1977 it was concluded that TCP (by now called Transmission Control Protocol) should be split into two protocols: a simple
Internet Protocol
that carried
datagrams
end to end through packet networks interconnected through
gateways;
and a TCP that managed the flow and sequencing of packets exchanged between hosts on the contemplated Internet. This split allowed for the possibility of realtime but possibly lossy and unsequenced packet delivery to support packet voice, video, radar, and other realtime streams.
Efficient processor support for DRFx, a memory model with exceptions
Authors: Singh Abhayendra , Marino Daniel , Narayanasamy Satish , Millstein Todd , Musuvathi Madan
Published: October 2012

A longstanding challenge of shared-memory concurrency is to provide a memory model that allows for efficient implementation while providing strong and simple guarantees to programmers. The C++0x and Java memory models admit a wide variety of compiler and hardwareoptimizations and provide sequentially consistent (SC) semantics for data-race-free programs. However, they either do not provide any semantics (C++0x) or provide a hard-to-understand semantics (Java) for racy programs, compromising the safety and debuggability of such programs.

In earlier work we proposed the DRFx memory model, which addresses this problem by dynamically detecting potential violations of SC due to the interaction of compiler or hardware optimizations with data races and halting execution upon detection. In this paper, we present a detailed micro-architecture design for supporting the DRFx memory model, formalize the design and prove its correctness, and evaluate the design using a hardware simulator. We describe a set of DRFx-compliant complexity-effective optimizations which allow us to attain performance close to that of TSO (Total Store Model) and DRF0 while providing strong guarantees for all programs.
MemScale
Authors: Deng Qingyuan , Meisner David , Ramos Luiz , Wenisch Thomas F. , Bianchini Ricardo
Published: October 2012

Main memory is responsible for a large and increasing fraction of the energy consumed by servers. Prior work has focused on exploiting DRAM low-power states to conserve energy. However, these states require entire DRAM ranks to be idled, which is difficult to achieve even in lightly loaded servers. In this paper, we propose to conserve memory energy while improving its energy-proportionality by creating active low-power modes for it. Specifically, we propose MemScale, a scheme wherein we apply dynamic voltage and frequency scaling (DVFS) to the memory controller and dynamic frequency scaling (DFS) to the memory channels and DRAM devices. MemScale is guided by an operating system policy that determines the DVFS/DFS mode of the memory subsystem based on the current need for memory bandwidth, the potential energy savings, and the performance degradation that applications are willing to withstand. Our results demonstrate that MemScale reduces energy consumption significantly compared to modern memory energy management approaches. We conclude that the potential benefits of the MemScale mechanisms and policy more than compensate for their small hardware cost.
Orchestration by approximation
Authors: Farhad Sardar M. , Ko Yousun , Burgstaller Bernd , Scholz Bernhard
Published: October 2012

We present a novel 2-approximation algorithm for deploying stream graphs on multicore computers and a stream graph transformation that eliminates bottlenecks. The key technical insight is a data rate transfer model that enables the computation of a "closed form", i.e., the data rate transfer function of an actor depending on the arrival rate of the stream program. A combinatorial optimization problem uses the closed form to maximize the throughput of the stream program. Although the problem is inherently NP-hard, we present an efficient and effective 2-approximation algorithm that provides a lower bound on the quality of the solution. We introduce a transformation that uses the closed form to identify and eliminate bottlenecks.

We show experimentally that state-of-the art integer linear programming approaches for orchestrating stream graphs are (1) intractable or at least impractical for larger stream graphs and larger number of processors and (2)our 2-approximation algorithm is highly efficient and its results are close to the optimal solution for a standard set of StreamIt benchmark programs.
Sponge
Authors: Hormati Amir H. , Samadi Mehrzad , Woh Mark , Mudge Trevor , Mahlke Scott
Published: October 2012

Graphics processing units (GPUs) provide a low cost platform for accelerating high performance computations. The introduction of new programming languages, such as CUDA and OpenCL, makes GPU programming attractive to a wide variety of programmers. However, programming GPUs is still a cumbersome task for two primary reasons: tedious performance optimizations and lack of portability. First, optimizing an algorithm for a specific GPU is a time-consuming task that requires a thorough understanding of both the algorithm and the underlying hardware. Unoptimized CUDA programs typically only achieve a small fraction of the peak GPU performance. Second, GPU code lacks efficient portability as code written for one GPU can be inefficient when executed on another. Moving code from one GPU to another while maintaining the desired performance is a non-trivial task often requiring significant modifications to account for the hardware differences. In this work, we propose Sponge, a compilation framework for GPUs using synchronous data flow streaming languages. Sponge is capable of performing a wide variety of optimizations to generate efficient code for graphics engines. Sponge alleviates the problems associated with current GPU programming methods by providing portability across different generations of GPUs and CPUs, and a better abstraction of the hardware details, such as the memory hierarchy and threading model. Using streaming, we provide a write-once software paradigm and rely on the compiler to automatically create optimized CUDA code for a wide variety of GPU targets. Sponge's compiler optimizations improve the performance of the baseline CUDA implementations by an average of 3.2x.
Computing elevation maxima by searching the gauss sphere
Authors: Wang Bei , Edelsbrunner Herbert , Morozov Dmitriy
Published: October 2012

The elevation function on a smoothly embedded 2-manifold in ℝ
3
reflects the multiscale topography of cavities and protrusions as local maxima. The function has been useful in identifying coarse docking configurations for protein pairs. Transporting the concept from the smooth to the piecewise linear category, this article describes an algorithm for finding all local maxima. While its worst-case running time is the same as of the algorithm used in prior work, its performance in practice is orders of magnitudes superior. We cast light on this improvement by relating the running time to the total absolute Gaussian curvature of the 2-manifold.
Dealing with large hidden constants
Authors: Tazari Siamak , Müller-Hannemann Matthias
Published: October 2012

We present the first attempt on implementing a highly theoretical polynomial-time approximation scheme (PTAS) with huge hidden constants, namely, the PTAS for Steiner tree in planar graphs by Borradaile, Klein, and Mathieu (2009). Whereas this result, and several other PTAS results of the recent years, are of high theoretical importance, no practical applications or even implementation attempts have been known to date, due to the extremely large constants that are involved in them. We describe techniques on how to circumvent the challenges in implementing such a scheme. With today's limitations on processing power and space, we still have to sacrifice approximation guarantees for improved running times by choosing some parameters empirically. But our experiments show that with our choice of parameters, we do get the desired approximation ratios, suggesting that a much tighter analysis might be possible.

Our computational experiments with benchmark instances from SteinLib and large artificial instances well exceeded our own expectations. We demonstrate that we are able to handle instances with up to a million nodes and several hundreds of terminals in 1.5 hours on a standard PC. On the rectilinear preprocessed instances from SteinLib, we observe a monotonous improvement for smaller values of ϵ, with an average gap below 1% for ϵ = 0.1. We compare our implementation against the well-known batched 1-Steiner heuristic and observe that on very large instances, we are able to produce comparable solutions much faster. We also present a thorough experimental evaluation of the influence of the various parameters of the PTAS and thus obtain a better understanding of their empirical effects.
Word grader and powerpoint grader
Authors: Hill Thomas G.
Published: October 2012

Word Grader is a document checker for use by instructors in Microsoft Word or Microsoft Office application courses. Word Grader uses Microsoft Word's Compare and Combine feature to merge a student document with the correct version of the assignment. Word Grader counts errors and embeds a grade report in the marked-up document. "PowerPoint Grader" is a companion product that grades Microsoft PowerPoint assignments. PowerPoint Grader extracts the text from a presentation and grades it. It also grades themes and slide layouts. Instructors have downloaded these graders hundreds of times and successfully integrated them into computer science curricula.
Teaching purpose compilers
Authors: Chakraborty Pinaki , Taneja Shweta , Saxena P. C. , Katti C. P.
Published: October 2012

This paper presents an exercise to teach fundamental compiler construction issues. Four simple compilers, in both source and executable forms, were distributed among the students. The students studied the source codes and the accompanying documents. They performed various experiments with the compilers that included modifying the source codes, reengineering phases and implementing new phases and utilities. The students were enthusiastic about the practical knowledge they gained from the exercise. More than fifty students undertook the exercise and the overall response was quite satisfactory.
Information technology literacy revisited
Authors: Jones Mary C. , Windsor John C. , Visinescu Lucian
Published: October 2012

This study examines student perceptions and usage of a variety of information technologies, their comfort level in performing basic computer related tasks, and their computer related experience and sources of learning about information technology. Findings are interpreted through a systems thinking perspective with a focus on the implications for information technology educators. Although students today have more exposure to information technology than their counterparts of a decade ago, these findings indicate that they still do not perceive the classroom as a major source of learning about it. Exploratory analysis, however, reveals that greater classroom exposure to information technology is positively related to a variety of factors.
Jim Gray - Part II of talking about Database Design
Authors: Gray Jim
Published: October 2012

Here’s another 24 minutes with Jim Gray. He’s one of the big minds behind SQL Server, Terra Service. And so much more. In this conversation we talk about architecture of Terra Service, among other database-related things. "I should talk about some of my lunatic fringe views on things," Jim starts out. Here’s a hint: many of the bleeding edge database systems today are built with Jim’s lunatic ideas. See the full video here:
E2E: Erik Meijer and Dave Campbell: Data, Databases and the Cloud
Authors: Campbell Dave , Meijer Erik
Published: October 2012

Dave Campbell is a Technical Fellow at Microsoft and long time database architect. Today, Dave works on the hardest problems facing SQL’s foray into the new world of cloud computing. His latest project in this space takes the form of SQL Azure. What is SQL Azure? What’s the different with the cloud and what we already experience with SQL server running in a clustered environment and reachable via the Internet? How does this focus on cloud computing and impact the evolution of database design? What’s going here? What’s next? Erik Meijer, de facto E2E host and language designer, interviews Dave to get answers to some of these questions. Erik works for Dave, by the way, and as you can see that doesn’t stop Erik from asking more than softball questions.
An interview with Melanie Mitchell
Authors: Snodgrass Richard T.
Published: October 2012

Melanie Mitchell, a Professor of Computer Science at Portland State University and an External Professor at the Santa Fe Institute, has written a compelling and engaging book entitled
Complexity: A Guided Tour,
published just last year by Oxford University Press. This book was named by Amazon.com as one of the 10 best science books of 2009. Her research interests include artificial intelligence, machine learning, biologically inspired computing, cognitive science, and complex systems.
Passing a Language through the Eye of a Needle
Authors: Ierusalimschy Roberto , de Figueiredo Luiz Henrique , Celes Waldemar
Published: October 2012

Scripting languages are an important element in the current landscape of programming languages. A key feature of a scripting language is its ability to integrate with a system language. This integration takes two main forms: extending and embedding. In the first form, you extend the scripting language with libraries and functions written in the system language and write your main program in the scripting language. In the second form, you embed the scripting language in a host program (written in the system language) so that the host can run scripts and call functions defined in the scripts; the main program is the host program. In this setting, the system language is usually called the host language.
Computing without Processors
Authors: Singh Satnam
Published: October 2012

From the programmer’s perspective the distinction between hardware and software is being blurred. As programmers struggle to meet the performance requirements of today’s systems, they will face an ever increasing need to exploit alternative computing elements such as GPUs (graphics processing units), which are graphics cards subverted for data-parallel computing, and FPGAs (field-programmable gate arrays), or soft hardware.
Commutative set
Authors: Prabhu Prakash , Ghosh Soumyadeep , Zhang Yun , Johnson Nick P. , August David I.
Published: October 2012

Sequential programming models express a total program order, of which a partial order must be respected. This inhibits parallelizing tools from extracting scalable performance. Programmer written semantic commutativity assertions provide a natural way of relaxing this partial order, thereby exposing parallelism implicitly in a program. Existing implicit parallel programming models based on semantic commutativity either require additional programming extensions, or have limited expressiveness. This paper presents a generalized semantic commutativity based programming extension, called Commutative Set (COMMSET), and associated compiler technology that enables multiple forms of parallelism. COMMSET expressions are syntactically succinct and enable the programmer to specify commutativity relations between groups of arbitrary structured code blocks. Using only this construct, serializing constraints that inhibit parallelization can be relaxed, independent of any particular parallelization strategy or concurrency control mechanism. COMMSET enables well performing parallelizations in cases where they were inapplicable or non-performing before. By extending eight sequential programs with only 8 annotations per program on average, COMMSET and the associated compiler technology produced a geomean speedup of 5.7x on eight cores compared to 1.5x for the best non-COMMSET parallelization.
The tao of parallelism in algorithms
Authors: Pingali Keshav , Nguyen Donald , Kulkarni Milind , Burtscher Martin , Hassaan M. Amber , Kaleem Rashid , Lee Tsung-Hsien , Lenharth Andrew , Manevich Roman , Méndez-Lojo Mario , Prountzos Dimitrios , Sui Xin
Published: October 2012

For more than thirty years, the parallel programming community has used the
dependence graph
as the main abstraction for reasoning about and exploiting parallelism in "regular" algorithms that use dense arrays, such as finite-differences and FFTs. In this paper, we argue that the dependence graph is not a suitable abstraction for algorithms in new application areas like machine learning and network analysis in which the key data structures are "irregular" data structures like graphs, trees, and sets.

To address the need for better abstractions, we introduce a data-centric formulation of algorithms called the
operator formulation
in which an algorithm is expressed in terms of its action on data structures. This formulation is the basis for a structural analysis of algorithms that we call
tao-analysis
. Tao-analysis can be viewed as an abstraction of algorithms that distills out algorithmic properties important for parallelization. It reveals that a generalized form of data-parallelism called
amorphous data-parallelism
is ubiquitous in algorithms, and that, depending on the tao-structure of the algorithm, this parallelism may be exploited by compile-time, inspector-executor or optimistic parallelization, thereby unifying these seemingly unrelated parallelization techniques. Regular algorithms emerge as a special case of irregular algorithms, and many application-specific optimization techniques can be generalized to a broader context.

These results suggest that the operator formulation and tao-analysis of algorithms can be the foundation of a systematic approach to parallel programming.
Generalized just-in-time trace compilation using a parallel task farm in a dynamic binary translator
Authors: Böhm Igor , Edler von Koch Tobias J.K. , Kyle Stephen C. , Franke Björn , Topham Nigel
Published: October 2012

Dynamic Binary Translation (DBT) is the key technology behind cross-platform virtualization and allows software compiled for one Instruction Set Architecture (ISA) to be executed on a processor supporting a different ISA. Under the hood, DBT is typically implemented using Just-In-Time (JIT) compilation of frequently executed program regions, also called
traces
. The main challenge is translating frequently executed program regions as fast as possible into highly efficient native code. As time for JIT compilation adds to the overall execution time, the JIT compiler is often decoupled and operates in a separate thread independent from the main simulation loop to reduce the overhead of JIT compilation. In this paper we present
two
innovative contributions. The first contribution is a
generalized
trace compilation approach that considers all frequently executed paths in a program for JIT compilation, as opposed to previous approaches where trace compilation is restricted to paths through loops. The second contribution reduces JIT compilation cost by compiling several hot traces in a concurrent task farm. Altogether we combine generalized light-weight tracing, large translation units, parallel JIT compilation and dynamic work scheduling to ensure timely and efficient processing of hot traces. We have evaluated our industry-strength, LLVM-based parallel DBT implementing the ARCompact ISA against three benchmark suites (EEMBC, BioPerf and SPEC CPU2006) and demonstrate speedups of up to 2.08 on a standard quad-core Intel Xeon machine. Across short- and long-running benchmarks our scheme is robust and never results in a slowdown. In fact, using four processors total execution time can be reduced by on average 11.5% over state-of-the-art decoupled, parallel (or
asynchronous
) JIT compilation.
Brainy
Authors: Jung Changhee , Rus Silvius , Railing Brian P. , Clark Nathan , Pande Santosh
Published: October 2012

Data structure selection is one of the most critical aspects of developing effective applications. By analyzing data structures' behavior and their interaction with the rest of the application on the underlying architecture, tools can make suggestions for alternative data structures better suited for the program input on which the application runs. Consequently, developers can optimize their data structure usage to make the application conscious of an underlying architecture and a particular program input.

This paper presents the design and evaluation of Brainy, a new program analysis tool that automatically selects the best data structure for a given program and its input on a specific microarchitecture. The data structure's interface functions are instrumented to dynamically monitor how the data structure interacts with the application for a given input. The instrumentation records traces of various runtime characteristics including underlying architecture-specific events. These generated traces are analyzed and fed into an offline model, constructed using machine learning, to select the best data structure. That is, Brainy exploits runtime feedback of data structures to model the situation an application runs on, and selects the best data structure for a given application/input/architecture combination based on the constructed model. The empirical evaluation shows that this technique is highly accurate across several real-world applications with various program input sets on two different state-of-the-art microarchitectures. Consequently, Brainy achieved an average performance improvement of 27% and 33% on both microarchitectures, respectively.
An SSA-based algorithm for optimal speculative code motion under an execution profile
Authors: Zhou Hucheng , Chen Wenguang , Chow Fred
Published: October 2012

To derive maximum optimization benefits from partial redundancy elimination (PRE),it is necessary to go beyond its safety constraint. Algorithms for optimal speculative code motion have been developed based on the application of minimum cut to flow networks formed out of the control flow graph. These previous techniques did not take advantage of the SSA form, which is a popular program representation widely used in modern-day compilers. We have developed the MC-SSAPRE algorithm that enables an SSA-based compiler to take full advantage of SSA to perform optimal speculative code motion efficiently when an execution profile is available. Our work shows that it is possible to form flow networks out of SSA graphs, and the min-cut technique can be applied equally well on these flow networks to find the optimal code placement. We provide proofs of the correctness and computational and lifetime optimality of MC-SSAPRE. We analyze its time complexity to show its efficiency advantage. We have implemented MC-SSAPRE in the open-sourced Path64 compiler. Our experimental data based on the full SPEC CPU2006 Benchmark Suite show that MC-SSAPRE can further improve program performance over traditional SSAPRE, and that our sparse approach to the problem does result in smaller problem sizes.