text:
The Sultanate of Oman is located in the Middle East between Yemen and United Arab Emirates, with coastline on the Arabian Sea, Gulf of Oman, and the Persian Gulf. This oldest independent state in the Arab world has a population of about 3.2 million people. The government is a monarchy with a hereditary sultan as both chief of state and head of government.
Until the 1970s, Oman was one of the most isolated countries and is still one of the more traditional countries in the Gulf region. Sultan Qaboos seized power from his father in 1970, moved away from the policy of isolationism, began a program of economic reform, and increased funding for health, education and welfare.
Oman's economy depends heavily on oil. Tourism is growing and is expected to be one of the largest sectors of the economy. For the traveller, Oman has a diverse environment, including unspoiled coastlines, mountains, and deserts. The capital city, Muscat, is a destination with an old walled city, forts, palaces, shopping in the souk, and the Grand Mosque.
Currency OMR: Rial
Language Arabic
Capital Muscat
Latest Alert January 12, 2020 - Oman: Sultan Qaboos Street Closed Off on 12 January in Muscat
The diseases listed below are those which occur most often in Oman. Other, less frequently encountered diseases might be displayed within the Travel Alerts section if they have occurred recently.
There is a significant risk for hepatitis A virus exposure in Oman through contaminated food or water. Infection can still occur at tourist destinations and resorts.
There is a significant risk for acquiring hepatitis B in Oman.
Rabies occurs in Oman. Travellers involved in outdoor activities (e.g., campers, hikers, bikers, adventure travellers, and cavers) may have direct contact with rabid dogs, bats, and other mammals. Those with occupational risks (such as veterinarians, wildlife professionals, researchers) and long-term travellers and expatriates are at higher risk.
Unvaccinated people can become infected through contaminated food and water in Oman, especially when visiting smaller cities, villages, or rural areas where food and water sources may be contaminated.
There is no risk of yellow fever transmission in Oman. However, this country requires a yellow fever vaccination certificate for all travellers over 9 months of age arriving from countries with risk of yellow fever transmission and for travellers having transited through an airport of a country with risk of yellow fever transmission.
Outbreaks of dengue fever may occur.
According to the World Health Organization, cases of this disease were reported in 2012. This disease may be present in Oman and is acquired through contact with fresh water, such as swimming, bathing, or rafting. Well-chlorinated swimming pools and contact with saltwater in oceans or seas will not put travellers at risk for schistosomiasis.
The WHO notes that there is a very low risk of malaria due to the occasional importation of cases from other countries. The U.S. Centers for Disease Control and Prevention advises that there is a very low risk for malaria.
The following is a list of recommended vaccinations for travelling to Oman.
There is a significant risk of exposure to hepatitis A for this country, therefore, the vaccination is recommended.
There is a significant risk of infection with hepatitis B for this country, therefore, the vaccination is recommended.
There is a risk of exposure to typhoid fever in this country through consumption of unsafe food and water. Since exposure to unsafe sources is variable within this country, the vaccination against typhoid fever is generally recommended, especially when visiting smaller cities or rural areas, where food and water sources may be contaminated.
Yellow fever vaccination is not recommended. However, this country requires a yellow fever vaccination certificate for all travellers over 9 months of age arriving from countries with risk of yellow fever transmission and for travellers having transited through an airport of a country with risk of yellow fever transmission.
The following is a list of recommended medications for travelling to Oman.
Anti-malarial medication is not recommended by the WHO. The U.S. Centers for Disease Control and Prevention recommends consideration of anti-malaria medication for pregnant or immuno-compromised persons.
Safety and Security in Oman
9999 Royal Oman Police
The crime rate is low in Oman, and travellers rarely experience safety and security problems. However, petty crime can occur in any crowded area or tourist destination. With respect to your personal safety, be cautious and always be aware of your surroundings, especially at night.
Keep valuables secured and out of sight. Safeguard your important documents, such as your passport.
Travellers should keep their passport available at all times for identification.
If driving outside Muscat, be aware that animals can wander onto roads, sudden rains can cause flooding on roads, and drivers may not follow standard rules of the road.
Oman is an Islamic country, and visitors should be sensitive to the culture and respect local customs. Dress modestly and avoid wearing revealing clothing, including sleeveless blouses. At hotel pool areas and beaches, swimming and beach clothing is acceptable.
There is zero tolerance for drinking and driving. It is illegal to drink or be drunk in public. Penalties for drug use, possession or trafficking are severe.
To express anger or frustration, either verbally or otherwise, is considered abusive and one can be charged with personal defamation. Any citizen or visitor can file these charges. Visitors charged with defamation cannot leave the country until the issue is resolved, usually with an apology and fine paid to the "victim."
Same-sex relationships and behaviours are illegal in Oman.
Avoid unnecessary travel to areas bordering Yemen and Saudi Arabia.
Political demonstrations do occur throughout Oman. Minimize risk by avoiding large public gatherings and demonstrations due to unpredictability of these situations.


text:
<!DOCTYPE HTML>

<title>org.apache.sysds.runtime.instructions.fed (Apache SystemDS 2.3.0-SNAPSHOT API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../jquery/jquery-ui.css" title="Style">

JavaScript is disabled on your browser.

Skip navigation links

Overview

Package

Class

Use

Tree

Deprecated

Index

Help

All Classes

SEARCH:
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">

JavaScript is disabled on your browser.

Package org.apache.sysds.runtime.instructions.fed

Class Summary

Class
Description

AggregateBinaryFEDInstruction

AggregateTernaryFEDInstruction

AggregateUnaryFEDInstruction

AppendFEDInstruction

BinaryFEDInstruction

BinaryFrameScalarFEDInstruction

BinaryMatrixMatrixFEDInstruction

BinaryMatrixScalarFEDInstruction

CastFEDInstruction

CentralMomentFEDInstruction

ComputationFEDInstruction

CovarianceFEDInstruction

CtableFEDInstruction

CumulativeOffsetFEDInstruction

FEDInstruction

FEDInstructionUtils

IndexingFEDInstruction

InitFEDInstruction

MMChainFEDInstruction

MMFEDInstruction

MultiReturnParameterizedBuiltinFEDInstruction

MultiReturnParameterizedBuiltinFEDInstruction.CreateFrameEncoder

MultiReturnParameterizedBuiltinFEDInstruction.ExecuteFrameEncoder

ParameterizedBuiltinFEDInstruction

ParameterizedBuiltinFEDInstruction.DecodeMatrix

QuantilePickFEDInstruction

QuantileSortFEDInstruction

QuaternaryFEDInstruction

QuaternaryWCeMMFEDInstruction

QuaternaryWDivMMFEDInstruction

QuaternaryWSigmoidFEDInstruction

QuaternaryWSLossFEDInstruction

QuaternaryWUMMFEDInstruction

ReblockFEDInstruction

ReorgFEDInstruction

ReorgFEDInstruction.DiagMatrix

ReorgFEDInstruction.Rdiag

ReshapeFEDInstruction

SpoofFEDInstruction

TernaryFEDInstruction

TsmmFEDInstruction

UnaryFEDInstruction

UnaryMatrixFEDInstruction

VariableFEDInstruction

Enum Summary

Enum
Description

FEDInstruction.FederatedOutput

FEDInstruction.FEDType

Skip navigation links

Overview

Package

Class

Use

Tree

Deprecated

Index

Help

All Classes

JavaScript is disabled on your browser.

Copyright © 2021 The Apache Software Foundation. All rights reserved.

redpajama_set_name: RedPajamaGithub


text:
<< "the industry's most powerful thin computer"?? certainly the most powerful Thin Notebook | Home | Surf from your SmartPhone? why not host the web site instead? could this be the basis of a new Branch Server? ;-) >>
Asus ships mini-laptop, confirms Windows version
Well this is going to be interesting - a windows version is around the corner? well to be honest I kind of like the Linux GUI anyway, but what will be crucial to this device is that it doesn't sacrifice speed or battery life for a fancy Vista like GUI.
I have always been a fan of Laptops and Notebooks being mobile devices, as opposed to Desktop replacements, so my personal bias has always been for a maximum screen size of 12" - besides have you ever been sitting by someone in an aircraft when they try to use their Laptop in economy? ;-)
More and more these days the connectivity side of things with 3G etc is becoming more mainstream and as a process making it more attractive to use devices more in the manner of Thin Clients and simply *connect* to your resources like Exchange via OWA, Google Apps, Zoho Office etc.
It will be interesting to see how this device fares in the Market?
Asus has begun shipping its two-pound mini laptop, and says the system will be available with "Windows" by the end of the year. The Asus Eee PC uses flash storage and is based on a 900 MHz Celeron M processor.
(Click here for a larger view of the Asus Eee PC)
Originally tipped to cost $199, the device is now priced at $400, initially in a Linux configuration with 4 GB of storage. (You can access more information on this, along with reviews of the device, on our sister site LinuxDevices, here.)
The Eee PC is a tiny, SSD-based laptop
Acer said in a statement that the Eee PC will be available with preinstalled Windows XP "by the end of the year," though no information was provided about which version of the OS will be offered. Potentially, Windows XP could require more memory and storage, demanding a somewhat higher price.
In principle, Windows XP Embedded (XPe) could alleviate this. However, Microsoft is thought to restrict XPe licensing to special-function, pre-programmed devices, such as for the embedded software infrastructure in thin client terminals or set-top boxes. If so, this would prevent its use in devices such as mini-laptops or UMPCs (ultra-mobile PCs). Still, Microsoft has become more aggressive in competing with Linux lately.
Without tipping Microsoft's hand on this matter, Scott Di Valerio, corporate VP of Microsoft's OEM division, stated, "we are excited to work with Asus to enable a Windows-based software and services solution for this new category of mobile PCs." With Windows on board, the Eee PC will better accommodate corporate requirements, Asus said in a statement.
Staging a series of press events worldwide, including one at the upscale Stanford Shopping Center in Silicon Valley, Asus said initial sales have been at the rate of one Eee PC every six seconds. In the U.S., the unit is available at online retailer Newegg.com and reportedly will also be sold at Best Buy stores.
Features and specifications cited by Asus for the Eee PC include the following:
Processor -- Intel Celeron M clocked at 900 MHz
Memory -- 512 MB of RAM, upgradeable to 1 MB by replacing the standard SODIMM
Storage -- 4 GB "solid-state drive"
Display -- 7-inch color TFT with 800 x 400 resolution
Camera -- webcam mounted above the screen
Audio -- dual speakers for stereo sound
10/100 Ethernet
802.11b/g wireless LAN
3 x USB
VGA port for external monitor
mini PCI-express slot (accessible internally)
Battery life -- 3-4 hours
Weight -- 2 pounds (.9 kg)
As noted above, the Eee PC is available now. More information can be found at the company's Web site, here.
Posted on Friday, November 2, 2007 10:15 AM Real Cool Stuff , Linux , Thin Clients | Back to top
Full Stack Engineering Publication linux
Intel's Clear Linux: First Impressions Linux
Which Distribution of Linux Should I Use? Linux
My Latest Virtualization Setup Linux
Ubuntu 15.04 – How to install Libre Office 5 Linux
Comments on this post: Asus ships mini-laptop, confirms Windows version
# re: Asus ships mini-laptop, confirms Windows version
This Laptop is so cool I might just buy one!
Left by Aeriel Lee on Feb 04, 2008 8:19 AM
asus mini laptop is also out of the market now in dubai?
Left by allan reynoso on Feb 06, 2008 5:52 AM
I am not too brilliant with computers so... can you tell me what I would need to use the mini laptop if using it away from home and wishing to go on the internet? Thankyou.
Left by gb on Apr 13, 2008 2:26 PM

redpajama_set_name: RedPajamaCommonCrawl


This is just another quick wire ring tutorial before my main weekend one. This tutorial will help you to create your own hearts adjustable wire ring-and its really simple and easy to do!
To begin, cut approximately 15-20cm worth of wire and position your pliers about 1cm from the end(2)(this will make the one side of your first heart).
Then begin to make a medium sized half loop by bending the wire around your pliers(3).
Then bend the wire backwards so that it is facing the opposite direction to step3, and squeeze into place (4).
Make another half loop to create the other bend in a heart and join the first end to the other wire with a slight twist using the pliers (5).
Next take the end of the wire that you have been working on and bend it around a makeup lid or something curved(6).
Make the second heart using the previous steps(7) and cut off the excess wire.
Hi sweetie, your blog is so lovely!
This DIY looks amazing! Great idea!!!


Brookie L. Casey, 81, of Wapakoneta passed away at 6:12 a.m. Sunday April 7, 2019 at Lima Memorial Health System, Lima.
She was born in Mount Gay, WV on July 19, 1937 to Stewart & Lucy (Marcum) Duty who preceded her in death.
On May 15, 1957 she married Jack Casey and he preceded her in death.
Survivors include a son, Toby Casey and two grandson Troy and Chance Casey.
She was preceded in death by a brother Tom Duty.
Brookie had worked for Fisher Cheese and retired from the City Bakery. She enjoyed going to church and gardening.
Funeral services will begin at 10:30 a.m. Thursday April 11, 2019 at Schlosser Funeral Home & Cremation Services, Wapakoneta. Burial will follow at Resthaven Cemetery, Moulton. Friends may call from 2-4 and 6-8 p.m. Wednesday at the funeral home.
Memorial contributions may be directed to the donor's choice.


We're celebrating 20 years of giving love, comfort and a SMILE to children in foster care!
Join us for an evening of celebration during Foster Care Awareness Month where you will hear stories from two former foster youth and meet the heroes who support children in foster care. Your registration includes materials for blankets to be made during the evening as well as a selection of delicious desserts!
Register here on Eventbrite as an individual sponsor (Blanket Angel - $30), or support the celebration at one of the other sponsorship categories, from table-level to event-level, by visiting our website to register. Exhibitors are also invited to register on our website so that you can share your story one-on-one with attendees.
Be a part of helping us reach our 2019 goal of giving 20,000 blankets for kids in foster care!


We are a global technology company providing the life sciences industry solutions in big data analytics, management, visualization and warehousing. Our offerings reduce risks, improve data quality, shorten time to market, and generate better insights from R&D and regulatory data.
Semantically harmonize and combine all your data from clinical trials, molecular biomarkers, bio-sample availability and bioinformatics into Xbioms'™ searchable warehouse with a universal data model to find cohorts, signals or do analytics across domains.
Manage CDISC standards driven metadata and data models for all stages of clinical trials from protocols to eCRF to submission with validated workflows. Xbiom lets sponsors specify data models and receive studies from CROs in SDTM, to validate and package technically conformant clinical data for regulatory submissions to the FDA and PMDA.
Semantically harmonize and combine all your Nonclinical study data into Xbioms'™ searchable warehouse with a universal data model to find subjects, dose groups or studies that show safety signals or patterns of interest for analysis and cross domain views.
Workbench for all practicing regulatory and data management teams at sponsors. Xbiom Nonclinical Regulatory Submissions and Study Lifecycle Solutions is offered as a Software as a Service on the AWS cloud, and is validated and qualified for regulatory use.
and take pride in our accomplishments.
Semantically integrate all the standardized data collected in nonclinical and clinical trials, genomic data from patient bio-samples, and smartphone remote monitoring data to support precision medicine development and translational research to discover effective treatments sooner.
Stay up-to-date by signing up for our personalized newsletters or scheduling a call with a local team member to better understand your specific needs.
© Copyright PointCross Life Sciences.


text:
Vivid Barangaroo: Winter Camp
Rebecca Varidel
Arts & Entertainment Features
Fittingly, the Vivid installation at Barangaroo this year again includes the "great woman" Marri Dyin one of the largest puppets in Australia, the glowing 6 metre tall who will walk from her winter camp to the Barangaroo waterfront to reflect the traditional winter season migration of First Nations peoples to the coast. This year in a Barangaroo first she will also be surrounded on performance nights Thursday to Sunday by a school of fish puppets (her food source), operated by a different group of local Sydney schoolchildren each night.
The bushland foreshore is named after Aboriginal woman Barangaroo a member of the Cammeraygal clan of the Eora Nation, who was the second wife of Bennelong (the interlocutor between the Aboriginal people and the early British colonists in New South Wales). While Bennelong spent considerable time in the British colonial settlement in Sydney, Barangaroo maintained her way of life with her people.
Inspired by the changing seasons, the 2019 Vivid Barangaroo Winter Camp will be a space where visitors can reflect on their own experiences surrounded by light and sound, enhanced by the visual narrative of puppetry Winter Camp will be a place to gather, reflect and honour the fact that Sydney stands on the land of the oldest continually living culture.
The installation experience will also expand to include a school of captivating, illuminated fish puppets. In a first for Barangaroo, a series of workshops led by First Nations choreographer and dancer Albert David will be held in the lead-up to the festival and will initiate Sydney school children into the story of Marri Dyin, teaching them simple puppeteering skills and basic choreography.
From Monday to Wednesday, Marri Dyin will sit in still contemplation by the crackling campfire, and during Thursday to Sunday evening performances, she will once again roam the waterfront, accompanied by the school of fish, and inviting audiences to join her as she prepares for the winter months ahead. As she moves through the landscape, she will invite audiences to speak the names and meanings of her surroundings in traditional language, or share a quiet moment of intimacy and contemplation.
Marri Dyin is not a traditional spirit, rather she is a contemporary concept; an elemental spirit intrinsically connected to the land. Her existence seeks to recognise the influence and importance of the First Nations women, who lived in Sydney prior to colonial settlement. Marri Dyin represents their strength and spirit, and their role as providers for their people through a connection to the land and its waterways.
The artistic collaboration brings together the talents of Erth Visual & Physical Inc., Jacob Nash, Mandylights and James Brown. Combining world-class puppetry, mechanics, sound and light, the artwork and performance. Wnter Camp 2019 each night from 6pm to 9pm 24 May to 16 June will showcase a spectacular night of Australian artistic innovation and creativity.
Austral Floral Ballet: Vivid 2019
Vivid Sydney is the largest festival of light, music and ideas in the Southern Hemisphere. Celebrating its eleventh anniversary in 2019, Vivid Sydney is continually setting the benchmark for world class events, creativity and innovation and it wil…
Bangarra Dance Choreographer Frances Rings On Terrain
Arts & Entertainment Interviews
"So Terrain is a work that is very special to me. It's a work that is inspired by Lake Eyre in South Australia. I created this work because I wanted people to understand the lens through which indigenous people view our relationship to country …
Five Top Ways to Experience Indigenous Sydney
The Eora nation refers to the collective 29 Aboriginal clans of the Sydney area and when European settlement occurred in 1788, it was estimated that 1,500 indigenous people were living in the region. Sadly, due to the effects of colonisation (such…
Five Free Things To Do In Sydney
Few will argue with the suggestion that Sydney is not an inexpensive place to live. Now-infamous smashed-avo jokes aside, cost of living in this fabulous city sure ain't cheap, but luckily here at Scoop we have a run down of some of the many excel…
Five Places To Catch Live Tunes In Bars
Sydney is bursting with music, from festivals and international tours to club nights, to local jazz bars, folk nights and beyond. Last year we gave you a round up of some of …


text:
Search Results for: Cheap Essay Writing🎓 www.WriteMyPaper.online 🎓Mazi Shala Essay In Marathi Language - Soal Essay Penjas Tentang Sepak Bola
Theoretical and Algorithmic Foundations of Online Learning
…no-regret online learning and develop the relevant notions of complexity in a surprising parallel to Statistical Learning Theory. We characterize online learnability through finiteness of the sequential versions of combinatorial…
Colliding Black Holes May Sing Different Gravitational Songs
…to it here), and then the sound is abruptly cut off — the song stops because the two black holes have become one. – See more at: http://www.space.com/32723-colliding-black-holes-sing-different-songs.ht… What…
Knight Science Journalism Program at MIT launches digital handbook for science editors, online fact-checking project
…scientific experts to reporting on controversial topics and designing science-centric visuals. The handbook is available to read online, or to download and share as a PDF. "We think lots of…
Analyzing language development from a network approach
1 eprint arXiv:cs/0601005 Ke, J. and Yao, Y. 1 9475 Ke, J. and Yao, Y. yes…
A virtual data language and system for scientific workflow management in data grid environments
1 Zhao, Y. 1 9554 Zhao, Y. yes…
Linguistics & Philosophy, Brain and Cognitive Sciences Special Seminar: Brain maturation and language development: from phonology to syntax
As the brain matures language processing develops. It will be argued that the maturation of certain fiber tracts goes together with the development of particular processing abilities. The talk will…
LIGO back online, ready for more discoveries
…thus the rate of gravitational-wave detections, grows as the cube of these distances. Q: What do you hope to "hear" and detect, now that LIGO is back online? A: We…
TESS Science Conference I (online registration deadline: July 19, 2019 at 11:59PM EDT)
The TESS Science Conference I will be the first conference dedicated to TESS mission science, including exoplanets, asteroseismology, stellar binaries, variable stars, Solar System science (e.g., asteroids and comets), extragalactic…
"The Art of Astrophysics" update
…an online Gallery of the entrants in our competition. All the entries, the winners, and a photo-set from our public gallery showing, are all available at: http://www.flickr.com/photos/artofastro/sets/ c) "The…
Partial Solar Eclipse–local viewing times and top ten tips for observing
…To watch the Aug. 21 NASA TV eclipse broadcast online and access interactive web content and views of the eclipse from these assets, visit: https://www.nasa.gov/eclipselive MIT Alumni Association Infinite…


text:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-jvm</artifactId>
        <relativePath>../pom.xml</relativePath>
        <version>1.2.5-SNAPSHOT</version>
    </parent>

    <artifactId>cucumber-osgi</artifactId>
    <packaging>jar</packaging>
    <name>Cucumber-JVM: OSGi</name>

    <dependencies>
        <dependency>
            <groupId>info.cukes</groupId>
            <artifactId>cucumber-java</artifactId>
        </dependency>
        <dependency>
            <groupId>info.cukes</groupId>
            <artifactId>cucumber-jvm-deps</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>info.cukes</groupId>
            <artifactId>gherkin</artifactId>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>info.cukes</groupId>
            <artifactId>cucumber-junit</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-all</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>net.sourceforge.cobertura</groupId>
            <artifactId>cobertura</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.osgi</groupId>
            <artifactId>org.osgi.core</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.ops4j.pax.exam</groupId>
            <artifactId>pax-exam</artifactId>
        </dependency>
        <dependency>
            <groupId>javax.inject</groupId>
            <artifactId>javax.inject</artifactId>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <configuration>
                    <archive>
                        <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
                    </archive>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.felix</groupId>
                <artifactId>maven-bundle-plugin</artifactId>
                <extensions>true</extensions>
                <configuration>
                    <instructions>
                        <Bundle-Description />
                        <Export-Package>cucumber.*</Export-Package>
                    </instructions>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>


text:
\section{Introduction}
\label{sec:introduction}
Many applications in science and engineering require the simulation of a large number of interacting particles. This includes the simulation of macro molecules, powders, mills, silo discharges and more. Due to the insight computer simulations allow into these processes, numerous molecular dynamics frameworks as well as discrete element frameworks like CHARMM~\cite{Brooks1983}, LAMMPS~\cite{Plimpton1995}, GROMACS~\cite{Pronk2013}, NAMD~\cite{Phillips2005},  LIGGGHTS\cite{Kloss2012}, ls1 mardyn~\cite{Horsch2013}, PROJECTCHRONO~\cite{Tasora2016} and waLBerla~\cite{Preclik2015} have been developed. To simulate such a huge number of particles computations may require enormous compute power and memory capacity and can thus be only performed on parallel supercomputers. Here we focus on distributed memory systems that must be programmed with message passing using MPI~\cite{MPI2016}. To fit simulations to this kind of supercomputers the simulation domain is partitioned into subdomains. These subdomains including the associated particles are assigned to different processes which get mapped to the compute cores. Each of these processes is responsible for handling one or more subdomains. For optimal memory use and computational efficiency, each process stores only the information relevant to its own subdomains. This creates the need to exchange information between processes.

In this paper we will focus on rigid particles of finite size which interact via collisions. Note that particles are modeled geometrically, and thus a particle may overlap with two subdomains. In this case, both subdomains need information about this particle and this duplicate information must be kept synchronized. A well known approach is to use nearest-neighbor communication to exchange information between adjacent subdomains. However this approach has clear limitations. When particles are so large that they overlap with several non-neighboring subdomains, communication beyond just the nearest neighbors becomes necessary. The conventional parallelization methods do not support such constellations~\cite{Pinches1991,Liem1991, Rapaport1991, Plimpton1995}. Advanced communication methods improve the communication volume but are also not capable of exchanging information past the next neighbor~\cite{Bowers2005,Bowers2007,Shaw2005,Snir2004,Iglberger2009,Iglberger2009a,Larsson2011,Preclik2015}.

However, this scenario can occur in many practical situations, as e.g. in the simulation of sediments, where the particle size distribution can be assumed to follow a lognormal distribution~\cite{Schruff2016}. Thus a typical simulation will be characterized by many small particles as well as few very large particles. For a fast simulation using a large number of CPUs is desirable and thus the simulation domain will have to be partitioned into many small subdomains. This can easily lead to the case where large particles span multiple subdomains. Such cases cannot be handled correctly by nearest neighbor communication alone, or only at increased cost, when the domain partitioning is modified such that even the largest particles are always contained in the union of only nearest neighbor subdomains. This in turn can lead to an unfavorable load balancing or even to a situation where subdomains become so large that they exceed the memory capacity of a single processor.

A similar problem occurs in coupled simulations when e.g.~suspensions are simulated with the particles embedded in a fluid~\cite{Rettinger2017a,Seil2017}. Then two simulation algorithms, one for particles and one for fluid dynamics, must be co-partitioned and co-scheduled. For efficiency, both methods must use a common domain partitioning. A reasonable load distribution for the flow solver as well as a good load balance for the rigid body dynamics may be impossible to achieve if the size of the largest particle determines a lower bound for the subdomain size.

Finally, also dynamic domain partitioning and refinement algorithms might pose problems. They may induce additional limitations on the domain partitioning as described e.g.\ in \cite{Schornbaum2016} and may lead to equivalent problems as discussed above. In such a constellation with a nonuniform mesh, large moving particles would pose limitations on refinement structure and would limit the flexibility to perform adaptive mesh refinement.

From these examples we conclude that there is significant interest to extend the current nearest-neighbor communication and synchronization algorithm. This article therefore introduces a new {\em shadow-owner} synchronization with the goal to permit more flexible domain partitioning. We describe the new parallel algorithm and analyze its parallel performance systematically. To this end we will show perfect weak scalability as well as agreeable strong scalability.

This work describes the new synchronization and communication method which has been implemented in the high performance multi physics framework \mbox{waLBerla}{} which is openly available, released under GPLv3 license\footnote{\url{walberla.net}}. \mbox{waLBerla}{} includes rigid body dynamics as a subsystem called PE. The excellent scalability and performance of \mbox{waLBerla}{}\footnote{\url{www.fz-juelich.de/ias/jsc/EN/Expertise/High-Q-Club/waLBerla/_node.html}} and PE{}\footnote{\url{www.fz-juelich.de/ias/jsc/EN/Expertise/High-Q-Club/pe/_node.html}} is acknowledged by being a member of the HighQ club of the Forschungszentrum Jülich~\cite{Eibl2017} that includes all programs that have shown scalability to almost half a million compute cores. In this work we demonstrate that the new communication algorithm also scales up to this maximal processor count of a current petascale supercomputer.

To ensure the comparability of our results the performance data will be expressed in \emph{Particle Updates per Core Second}. This unit is calculated as
\begin{equation*}
	\text{PUpCS} = \frac{\text{total number of simulation steps} * \text{total number of particles}}{\text{total simulation time} * \text{number of cores}}.
\end{equation*}
This enables a comparison between different supercomputer architectures as well as between implementations. The parallel efficiency can also easily be computed from these numbers by normalizing all values to the one for the smallest number of cores.

The remainder of this paper is structured as follows. In section \ref{sec:RigidBodyDynamicsSimulations} we give an introduction to rigid body dynamics simulations detailing the different components needed. We then continue in section \ref{sec:Implementation} with the description of our implementation. We will discuss in detail the common next neighbor synchronization (section \ref{sec:SyncNextNeighbor}) and our newly developed shadow owner synchronization (section \ref{sec:SyncShadowOwner}). In section \ref{sec:PerformanceResults} we discuss the scalability of both algorithms for up to almost 2 million processes as well as the range of scenarios where they can be applied. We then conclude with a summary in section \ref{sec:Conclusion}.

\section{Rigid Body Dynamics Simulations}
	\label{sec:RigidBodyDynamicsSimulations}
In contrast to molecular dynamics, rigid body dynamics models particles with an actual spatial extent. Interaction between particles takes place when two particles are geometrically in contact with each other. Such collisions must be resolved by suitable models. Since the interaction through collisions is essentially short ranged, many ideas from molecular dynamics for short range potentials can be applied.

The general time step of a parallel rigid body dynamics simulation consists of three parts which are executed in a loop. At first the {\em collision detection} checks which particles are in contact. This is a two step process. First the number of possible contact pairs is reduced. Checking all possible pairs results in a runtime complexity of $\mathcal{O}\left(n^2\right)$ with $n$ being equal to the number of particles which has to be avoided to achieve good performance. Therefore more advanced algorithms like verlet neighbor lists~\cite{Verlet_1967}, cell linked lists~\cite{Hockney1974,Allen2017} or hierarchical hash grids~\cite{Ericson2004,Erleben2005} are used to reduce the complexity to $\mathcal{O}\left(n\right)$. In the second step all candidate pairs identified in the first step are checked for collision using their actual geometry. In the non spherical case an additional selection step can be introduced in between to avoid costly complex collision functions. Commonly axis aligned bounding box (AABB) checks are used for this~\cite{Schinner_1999,Perkins_2001}.

Detected contacts are then passed on to the {\em collision resolution}. Well known algorithms for this stage are soft contact models~\cite{CUNDALL1971,Cundall1979} as well as hard contact models~\cite{Moreau1988,Anitescu1997,Stewart2000}. This stage is also responsible for performing the time integration. For distributed memory parallel simulations an additional {\em synchronization step} is required. Here information must be redistributed such that the data structures are consistent and that every process has all the information it needs to perform the next iteration. The details of this synchronization step depend heavily on the parallelization strategy used. In this paper we focus on the spatial subdivision approach \cite{Plimpton1995,Beazley1995}.

The simulation domain is partitioned into nonoverlapping subdomains and each subdomain is assigned to a processor so that each processor may handle one or several subdomains. This allows the distribution of workload as well as the distribution of data. Each particle is only stored in the subdomain in which its center of mass lies. The location of the particle defines which subdomain and thus which processor {\em owns} the particle. In addition to these \emph{master particles}, we will employ {\em shadow particles} to facilitate distributed memory processing.

\begin{figure}
		\centering
		\begin{tikzpicture}[scale=0.4]
			\begin{scope}[xshift=-10cm]
				\path [fill = black!10] (-4.5,-5) rectangle (4.5,4);
				\draw (0, 5) node [below] {View of Process 0};
				\draw (-2.5, 4) node [below] {Process 0};
				\draw ( 2.5, 4) node [below] {Process 1};
				\draw [very thick] (0.0,-5.0) -- (0.0,+4.0);
				\particle{-1.0}{-1.0}

			\end{scope}

			\begin{scope}[xshift=0]
				\path [fill = black!10] (-4.5,-5) rectangle (4.5,4);
				\draw (0, 5) node [below] {Global View};
				\draw (-2.5, 4) node [below] {Process 0};
				\draw ( 2.5, 4) node [below] {Process 1};
				\draw [very thick] (0.0,-5.0) -- (0.0,+4.0);
				\particle{-1.0}{-1.0}
				\particle{ 2.5}{ 0.0}
			\end{scope}

			\begin{scope}[xshift=10cm]
				\path [fill = black!10] (-4.5,-5) rectangle (4.5,4);
				\draw (0, 5) node [below] {View of Process 1};
				\draw (-2.5, 4) node [below] {Process 0};
				\draw ( 2.5, 4) node [below] {Process 1};
				\draw [very thick] (0.0,-5.0) -- (0.0,+4.0);
				\ghostParticle{-1.0}{-1.0}
				\particle{ 2.5}{ 0.0}
			\end{scope}
		\end{tikzpicture}
		\caption{
Illustration of the shadow particle concept. Master particles are drawn solid with their centers of mass marked by a cross, whereas the shadow particle is represented by a dotted outline. The situation as seen globally is depicted in the middle. The left and right picture show the information as seen by the two different processes. The shadow particle is necessary so that process 1 can detect the collision that occurs inside its domain with a particle that it does not own.
		}
		\label{fig:SpatialSubdivision}
\end{figure}

The need for shadow particles is illustrated in Fig.~\ref{fig:SpatialSubdivision} showing the situation at the interface between two subdomains that belong to different processes. In order to detect the collision between the two particles one of the two processes must have information about both particles. To this end, the natural choice is to store additional information in each process about particles which overlap the subdomain. This information is organized as \emph{shadow particles} which mirror master particles that are owned by different subdomains. A shadow particle must be created when a particle overlaps a subdomain that is not its owning subdomain. The shadow particle is visualized by a dashed contour in Fig.~\ref{fig:SpatialSubdivision}. Note that using the shadow particle  it is now possible for process 1 to detect the collision and compute a collision response. In the following section we will discuss in detail two alternative synchronization algorithms to manage the shadow particles.

\section{Parallelization using the \mbox{waLBerla}{} Framework}
	\label{sec:Implementation}
waLBerla is a software framework that provides functionality for domain partitioning using cuboidal subdomains that are organized in a forest of octrees \cite{Godenschwager2013, Schornbaum2016}. Excellent scalability and efficiency is achieved since all data structures are stored in a fully distributed manner avoiding storing any global information. In particular each process has only information about its own subdomains and its directly adjacent neighbors. This includes particle data and domain partitioning information.

\subsection{General Requirements for Synchronization Algorithms}
\label{sec:Requirements}
The two synchronization methods discussed in this paper are independent of the contact model. As long as the interaction is short ranged they can be used for both molecular dynamics as well as rigid body dynamics. Short ranged in this context means that particles only interact with each other when they are closer than a certain threshold. This threshold has to be much smaller then the domain size. In this paper we focus on rigid body dynamics using a non smooth granular dynamics model~\cite{Preclik2015}. For both algorithms we rely on the assumption that particles do not move farther than half the diameter of the smallest particle within one time step. Since the physical accuracy of the simulation would decrease for even lower velocities this is no constraint.

When particles are generated, the respective memory is allocated in the subdomain where their center of mass lies. The synchronization algorithm must then create and update shadow particles whenever they are needed on other processes. Shadow particles hold {\em passive} information that can be read by the algorithms, but not modified. In particular, all geometric transformations, such as translations and rotations that occur due to time integration are executed only on the master particle and are subsequently synchronized to all shadow particles. The synchronization is also responsible for deleting shadow particles when they are not necessary anymore. For all these tasks, the synchronization algorithm maintains a list of shadow particles for every master particle on the process of the master particle. Additionally a reference back from every shadow particle to its corresponding master particle is stored on the process of every shadow particle. This data structure enables to efficiently update shadow particles and to collect and aggregate interactions. Since it is sometimes unavoidable to set forces and torques on shadow particles -- either due to user interaction or due to collisions -- these contributions are cached and collected on the master particle during the collision resolution phase. The reduction algorithm used for this can also rely on the references maintained by the synchronization algorithm.

The different types of information are communicated with a special messaging protocol. Each message consists of an identifier and message specific data. Both the identifier as well as the data are packed at the sender side and are unpacked to be processed at the receiver side. To optimize communication time, messages sent to the same destination process are first collected and sent in one block. This message aggregation helps to reduce the impact of latency involved in every communication. A more detailed description of this optimized message protocol can be found in~\cite{Iglberger2009}.

In summary, synchronization algorithms must fulfill three tasks:
	\begin{itemize}
		\item create and delete shadow particles
		\item update shadow particles when master particle is modified
		\item maintain references between corresponding master and shadow particles
	\end{itemize}
Two additional requirements must be met to achieve good scaling results:
	\begin{itemize}
		\item use only local and next neighbor information
		\item reduce non next neighbor communication to a minimum
	\end{itemize}
We will refer to these requirements as \emph{simulation requirements} and \emph{scaling requirements}. In the following two sections a basic synchronization algorithm as well as our extension will be discussed.

\subsection{Next Neighbor Synchronization}
\label{sec:SyncNextNeighbor}
\begin{algorithm}
	\caption{Next Neighbor Synchronization}\label{alg:NNS}
	\begin{algorithmic}[1]
		\Function{syncNextNeighbor}{}
			\ForAll{master particles}
				\If {overlaps neighboring domain} \Comment{step 1}
					\If {neighbor is registered as shadow owner}
						\State \Call{update properties of the corresponding shadow particle}{}
					\Else
						\State \Call{create new shadow particle}{}
						\State \Call{register new shadow owner}{}
					\EndIf
				\Else
					\If {neighbor is registered as shadow owner} \label{alg:NN:reg}
						\State \Call{remove shadow particle}{}
						\State \Call{deregister shadow owner}{}
					\EndIf
				\EndIf
				\If {particle left own subdomain} \Comment{step 2}
					\State \Call{find new owner}{}
					\If {new owner found}
						\State \Call{transfer ownership}{}
						\State \Call{update owner of all shadow particles}{}
					\Else
						\State \Call{remove particle and all its shadow particles}{}
					\EndIf
				\EndIf
			\EndFor
			\State \Call{send\&receive messages}{} \Comment{all messages are aggregated till this point}
			\EndFunction
	\end{algorithmic}
\end{algorithm}

For the basic next neighbor synchronization (NNS) one assumption has to be made. The radius of the largest particle, i.e. the maximal distance between the center of mass and the confining hull, has to be smaller than the smallest edge length of the subdomains. If this is true one can achieve all three tasks within one communication step by only using next neighbor communication. This communication pattern is for example described in~\cite{Rapaport1991}.It is very well suited for highly parallel computations and exhibits perfect weak and strong scaling~\cite{Eibl2017}.

We will now describe the algorithm in detail. A pseudocode version is shown in Algorithm~\ref{alg:NNS}. Since only next neighbors are involved every aspect can be controlled by the owner. Therefore every subdomain processes only its master particles. Everything related to shadow particles must be communicated to the corresponding process. This involves sending a message. The algorithm can be divided into two steps. In the first step, for all master particles that overlap a neighboring subdomain which does not have a shadow particle, one is created. If there is already a shadow particle all its properties get updated with the values from the master particle. These two cases are treated separately since updating involves less data to be sent in comparison to a full copy. If there is no overlap but a shadow particle exists then it gets deleted. In all these operations the references between the master and shadow particles are updated to remain consistent.

In the second step for all master particles it is checked whether their center of mass still lies within the owning subdomain. If it has left its subdomain, the new owner is determined. The new owner will subsequently promote its shadow particle to a master particle and all other shadow copies get notified about the new owner. If no owner is found - this means that the particle has left the simulation domain - it gets deleted. Since there is no dependency between the messages within this algorithm, they can be aggregated and sent in a block at the end of the routine.

A significant drawback of this algorithm is that if the initial assumption about the maximal particle size does not hold, the synchronization method cannot be used (see Fig.~\ref{fig:NNfail}). Since it only involves next neighbor communication subdomains farther away will not be updated. This would eventually result in undetected collisions and wrong simulations. A correct simulation would require sufficiently large subdomains. However the subdomain size might be restricted by coupled algorithms or load balancing algorithms like described in the introduction. An alternate synchronization method is needed to tackle that case. In the next section we describe our new approach which does not depend on the next neighbor assumption.

	\begin{figure}
		\centering
		\begin{tikzpicture}[scale=0.4]
			\tikzset{cross/.style={cross out, draw=black, minimum size=2*(#1-\pgflinewidth), inner sep=0pt, outer sep=0pt},
cross/.default={1pt}}

				\path [fill = black!10] (-7.5,-5) rectangle (7.5,4);
				\draw (-5, 4) node [below] {Process 0};
				\draw ( 0, 4) node [below] {Process 1};
				\draw (+5, 4) node [below] {Process 2};
				\draw [very thick] (-2.5,-5.0) -- (-2.5, +4.0);
				\draw [very thick] ( 2.5,-5.0) -- (2.5,+4.0);
				\clip (-7.5,-5) rectangle (7.5,4);
				\draw (-5,-1) circle [x radius = 10, y radius = 2];
				\draw (-5,-1) node[cross=3] {};

		\end{tikzpicture}
		\caption{The picture illustrates the case where one particle is large enough to reach non adjacent subdomains. In this case the next neighbor synchronization cannot be used since Alg.~\ref{alg:NNS} contains no communication between non adjacent subdomains.}
		\label{fig:NNfail}
	\end{figure}

\subsection{Shadow Owner Synchronization}
	\label{sec:SyncShadowOwner}
		\begin{algorithm}
			\caption{Shadow Owner Synchronization}\label{alg:SOS}
		\begin{algorithmic}[1]
			\Function{syncShadowOwners}{}
			\ForAll{master particles}
				\State \Call{update properties of all shadow particles}{}
				\If {particle left own subdomain}
					\State \Call{find new owner}{}
					\If {new owner found}
						\State \Call{transfer ownership}{}
						\State \Call{update owner of all shadow particles}{}
					\Else
						\State \Call{remove particle and all its shadow particles}{}
					\EndIf
				\EndIf
			\EndFor
			\State \Call{send\&receive messages}{} \Comment{all messages are aggregated till this point}
			\ForAll{particles}
				\If {overlaps neighboring domain}
					\If {neighbor is not owner and not cached}
						\State \Call{create new shadow particle}{}
						\State \Call{register new shadow owner}{}
						\State \Call{flag neighbor}{}
					\EndIf
				\EndIf
				\If {particle is a shadow particle and no longer touching the current subdomain}
					\State \Call{delete particle}{}
					\State \Call{notify neighbors and owner}{}
				\EndIf
			\EndFor
			\State \Call{send\&receive messages}{} \Comment{all messages are aggregated till this point}
			\EndFunction
		\end{algorithmic}
		\end{algorithm}

When particles do not satisfy the next neighbor assumption, one option is to handle them globally. This means that every process holds a copy of these large particles and all synchronizations involve global communication. Since global communication does not scale with the number of processes involved, this would degrade the parallel efficiency in large scale simulations. Therefore our alternative approach avoids global communication entirely and instead uses an approach which we call diffusive. The idea behind this is to propagate information to neighbors if they are lacking it. This way information spreads like a drop of ink in water, slowly covering the whole domain. Applied to our synchronization problem, every subdomain checks its neighbors if they need a shadow particle for one of its master or shadow particles. If so they send the required information. This check can be executed locally and does not involve global communication. Information about shadow particles will propagate one subdomain per synchronization call. Also the update of shadow particles can be performed by point-to-point communication using the list of shadow particles maintained for the master particle. Though more expensive than simple next neighbor communication this avoids an expensive global communication.

Note that information is propagated by each subdomain based only on its local view of its neighborhood. Therefore the situation may arise that one subdomain receives the same information twice from different senders. However, in all cases one is the exact duplicate of the other and one is discarded.

When a large particle that covers more than one subdomain is initialized, more synchronization calls are required to create all shadow particles. In every synchronization call new shadow particles can be created in neighboring subdomains of existing shadow particles. Therefore the exact number of synchronizations calls is dependent on the size of the particle. Once all initial references between master and shadow particles have been created one synchronization call per time step is sufficient to keep all references up to date. In the following we will refer to this new algorithm as {\emph{shadow owner synchronization (SOS)}}.

A pseudo code with the details of the SOS can be found in Algorithm~\ref{alg:SOS}. The algorithm can be decomposed into two parts. The first part starts with updating all shadow particles with values from the master particle. Then the ownership of all master particles is checked by finding the subdomain which contains the center of mass. When needed the ownership is transfered. The second part of the algorithm checks all particles - master as well as shadow particles - if they overlap an adjacent subdomain. If needed and not already existent new shadow particles are created. The creation also involves an update of the shadow owner list stored by the master particle. Then every subdomain deletes shadow particles that are not needed anymore.

In this algorithm synchronization is needed at two points. All messages in the first part can be aggregated. The communication pattern is a point-to-point communication between the master particle and all its shadow particles. The second point of communication is after the second part of the algorithm. Again all messages can be collected and sent as one large aggregated block. This communication is again a point-to-point communication between master and shadow particles with next neighbors added. In total this algorithm needs two communication steps and the number of messages sent is roughly proportional to the number of shadow particles.{}

In its basic form this algorithm will produce unnecessary communications. Since shadow copies do not have any information about the other shadow copies their subdomains will attempt to generate new shadow copies at adjacent subdomains as part of every synchronization. To avoid this overhead, a cache is introduced for every subdomain. This cache stores information about previously executed communication. In particular, if the creation of a shadow particle on a neighboring subdomain has been requested. With this information the cache can be used to avoid redundant communication (compare line 17 of Alg. \ref{alg:SOS}). The cost of this optimization is the additional memory needed as well as management overhead. However, since this cache only stores information about neighboring subdomains its size and cost remains bounded and thus supports scaling to large processor numbers. For further details see the pseudo code in Alg.~\ref{alg:SOS}.

The proposed synchronization algorithm fulfills all simulation as well as scaling requirements stated in Sec.~\ref{sec:Requirements}. Scaling results for this algorithm are discussed in the next section.

\section{Performance Results}
\label{sec:PerformanceResults}
In this section the scalability of both synchronization algorithms is evaluated and the advantages as well as disadvantages of our approach are discussed. All performance measurements are conducted on the Juqueen supercomputer located at the Jülich Supercomputing Centre (JSC)~\cite{juqueen}. This is a IBM BlueGene/Q cluster with \num{28672} nodes. Each node contains one PowerPC A2 processor with \num{18} (only 16 are usable) cores clocked at \SI{1.6}{GHz}~\cite{Gilge2014,Wautelet2014}. The processors support 4-way simultaneous multithreading (SMT) for all cores. Previous tests showed that making full use of the multithreading capabilities yields the best performance~\cite{Eibl2017}. For full-machine jobs this sums up to \num{1835008} processes. Each node also offers \SI{16}{GB} of RAM. The nodes are connected via a 5D torus network.

\subsection{Weak and Strong Scalability}
To demonstrate the scalability of these algorithms we perform weak- and strong-scaling experiments. In weak-scaling experiments the number of processes is increased together with the problem size. For perfect weak-scaling we expect the time to solution to stay constant. The performance unit PUpCS will reflect that by also staying constant since the increase in the number of particles will cancel out with the increase in the number of cores. Let $t_p$ be the time to solution for p processes. For weak-scaling experiments the parallel efficiency is then defined to be
\begin{equation*}
e_{p,ws} = \frac{t_1}{t_p}.
\end{equation*}

For strong-scaling experiments the number of cores is increased but the problem size stays the same. In this case, ideally, the computation time should decrease by the same amount as the computation power is increased. Again this will have no effect on the PUpCS measure since both contributions will cancel out each other. With the same definition of $t_p$ as before the parallel efficiency for strong-scaling is defined to be:
\begin{equation*}
e_{p,ss} = \frac{t_1}{pt_p}.
\end{equation*}

More in-depth information about performance measurements in general can be found in~\cite{Hager2010}.

\subsection{Scalability in Different Scenarios}
	\label{sec:Scaling}{}
	\begin{figure}
		\centering

		\subfloat[sparse scenario]{
		\begin{tikzpicture}[scale = 0.4]
		\foreach \j in {0,...,4}

		    \foreach \i in {0,...,4}{\fill[black!50] (\i, \j) circle [radius=0.4];}
		}
		\draw[very thick, dashed] (-0.5, -1) -- (-0.5, 5);
		\draw[very thick, dashed] (+4.5, -1) -- (+4.5, 5);
		\draw[very thick, dashed] (-1, -0.5) -- (+5, -0.5);
		\draw[very thick, dashed] (-1, +4.5) -- (+5, +4.5);
		\end{tikzpicture}
		}
		\hspace{1cm}
		\subfloat[dense scenario]{
		\begin{tikzpicture}[scale = 0.4, rotate = 60]
		[hexa/.style= {shape=regular polygon, regular polygon sides=6, minimum size=1cm, draw,anchor=south}]

		\foreach \j in {0,...,3}
		    \ifodd\j
		         \foreach \i in {0,...,4}{\fill[black!50] ({\j * sin(60)},{(\i+0.5)}) circle [radius=0.5];}
		    \else
		         \foreach \i in {0,...,4}{\fill[black!50] ({\j * sin(60)},{\i}) circle [radius=0.5];}
		    \fi}
		\draw[very thick] ({-0.0 * sin(60) - 0.5}, -1) -- ({-0.0 * sin(60) - 0.5}, 5);
		\draw[very thick] ({+3.0 * sin(60) + 0.5}, -1) -- ({+3.0 * sin(60) + 0.5}, 5);
		\draw[very thick, dashed] ({-1 * sin(60)}, 0) -- ({+4 * sin(60)},0);
		\draw[very thick, dashed] ({-1 * sin(60)}, 4) -- ({+4 * sin(60)},4);
		\end{tikzpicture}
		}
		\hspace{1cm}
		\subfloat[large scenario]{
		\begin{tikzpicture}[scale = 0.4]

		\foreach \j in {0,...,4}
		{
		    \fill[black!50] (0, \j) circle [radius=0.4];
		    \fill[black!50] (4, \j) circle [radius=0.4];
		}
		\foreach \j in {0,...,4}
		{
		    \fill[black!50] (\j, 0) circle [radius=0.4];
		    \fill[black!50] (\j, 4) circle [radius=0.4];
		}
		\fill[black!50] (2,2) circle [radius=1.5];
		\draw[very thick, dashed] (-0.5, -1) -- (-0.5, 5);
		\draw[very thick, dashed] (+4.5, -1) -- (+4.5, 5);
		\draw[very thick, dashed] (-1, -0.5) -- (+5, -0.5);
		\draw[very thick, dashed] (-1, +4.5) -- (+5, +4.5);
		\end{tikzpicture}
		}

		\caption{Illustration of a 2d equivalent of the sparse a), dense b) and large c) scenario. These illustrations contain far less particles than the real scenarios and the scaling is not correct. Each illustration depicts a building block which is repeated periodically at its boundaries. Periodic boundaries are marked as dashed lines.}
		\label{fig:Scenarios}
	\end{figure}

The simulation loop of a parallel rigid particle simulation can be divided into two phases: synchronization/communication and collision detection/resolution. The computation time spent in the collision detection/resolution phase heavily depends on the number of collisions which occur per time step. For a homogeneous scenario this corresponds to the particle density. To study the performance of the algorithms for a broad range of applications, we will investigate two different scenarios. One scenario is sparse with a low particle density where we expect that the synchronization and communication dominate the overall performance. In a second scenario we explore a dense setup where more compute time is spent in the collision detection and resolution. An exemplary distribution of runtime for two specific scenarios can be found in Fig.~\ref{fig:RuntimeDistribution}. An additional third scenario  with large particles is evaluated to demonstrate the features of our new synchronization algorithm. The values describing the scenarios in the upcoming paragraphs are given in dimensionless units. All scenarios kept simple to minimize the influence of other factors on our performance measurements.

	\begin{figure}
		\centering
		\subfloat[sparse scenario]{\includegraphics[width = 0.45\textwidth]{SparseTimingNN}}
		\subfloat[dense scenario]{\includegraphics[width = 0.45\textwidth]{DenseTimingNN}}
		\caption{Depending on the relation between number of collisions and number of shadow particles, the synchronization can take up to one fourth of the total computation time. Both time measurements were taken from weak scaling runs using NNS with \num{1048576} processes.}
		\label{fig:RuntimeDistribution}
	\end{figure}

\begin{figure}
		\centering
		\subfloat[sparse scenario, weak scaling]{\includegraphics[width = 0.45\textwidth]{TimeStepsSparseWeak}}
		\subfloat[sparse scenario, strong scaling]{\includegraphics[width = 0.45\textwidth]{TimeStepsSparseStrong}}

		\subfloat[dense scenario, weak scaling]{\includegraphics[width = 0.45\textwidth]{TimeStepsDenseWeak}}
		\subfloat[dense scenario, strong scaling]{\includegraphics[width = 0.45\textwidth]{TimeStepsDenseStrong}}

		\subfloat[large scenario, weak scaling]{\includegraphics[width = 0.45\textwidth]{TimeStepsLargeWeak}}
		\subfloat[large scenario, strong scaling]{\includegraphics[width = 0.45\textwidth]{TimeStepsLargeStrong}}

		\caption{In the left column the weak-scaling results are visualized for various scenarios. The right column show strong-scaling results. Each row corresponds to one scenario. The first row is a sparse granular gas scenario, the second row is a dense scenario and the last row is a bidisperse scenario which cannot be simulated with the traditional next neighbor approach. All scaling runs were conducted with both synchronization methods when possible. On the y-axis the achieved kilo particle updates per core second (see Sec.~\ref{sec:introduction}) are shown.}
		\label{fig:scaling}
	\end{figure}

\subsubsection{Sparse Scenario}
The sparse scenario is a granular gas confined in a static box. The granular gas consists of spherical particles. All particles are initialized on a rectangular grid (sc~\cite{J.R.Hook1991}) and have the same radius but a random initial velocity. The particle density is low enough for the particles to travel longer distances and to cross subdomain boundaries. Fig.~\ref{fig:Scenarios} a) shows a simplified illustration of this scenario. For the weak-scaling experiment a subdomain of size $20 \times 20 \times 20$ containing \num{8000} particles of radius \num{1} is assigned to every process. In our largest weak-scaling experiments we simulate \num{1.5e10} master particles and \num{1.8e9} shadow particles. This is executed on the full Juqueen with \num{28672} nodes using \num{1835008} processes on \num{458752} cores. For the strong scaling a fixed domain size of $\num{2560} \times \num{1280} \times \num{1280}$ is chosen. The domain is equally divided between all processes. This results in \num{64000} particles per process for the \num{1024} nodes run and \num{2285} particles for \num{28672} nodes run. More detailed parameters for the different scenarios can be found in Tab.~\ref{table:ScalingParameters}.

In this scenario both synchronization methods exclusively use next neighbor communication. Therefore we expect both algorithms to scale equally well. Fig.~\ref{fig:scaling} a) and b) show the results for the weak- and strong-scaling experiments using the sparse scenario. In the weak-scaling experiments neither of the algorithms drops in performance. Even on the whole machine with \num{1835008} processes both methods yield almost \SI{100}{\percent} parallel efficiency. The slow degradation in parallel efficiency for the strong-scaling gets noticeable above \num{8192} nodes (\num{524288} processes). During the increase from \num{1024} nodes to all available \num{28672} nodes the parallel efficiency drops to approximately \SI{70}{\percent} for both algorithms. This is due to the reduced number of particles per process. Fewer particles lead to fewer collisions and therefore proportionally less numerical effort is needed to advance the simulation. In this situation, algorithmic components that are independent of the number of particles like communication latency and logistic operations on the data structures become more prominent. These contributions dominate in strong-scaling experiments when the number of processes becomes very large. If we compare both algorithms we see that both methods exhibit the same behaviour. If we consider the absolute values of performance we can calculate that the more advanced SOS method achieves roughly \SI{83}{\percent} of the PUpCS of the NNS. Although the information communicated is the same for both synchronization methods, the SOS needs two communication cycles whereas the NNS needs only one. Therefore a slightly lower performance of the SOS as compared to the NNS is expected and is unavoidable.

\subsubsection{Dense Scenario}
The dense scenario consists of a periodic simulation domain confined in the z direction by solid walls. It is filled with spherical particles arranged on a hexagonal close packing (hcp~\cite{J.R.Hook1991}) lattice. The radius of the spheres is chosen such that the spheres touch their neighbors. Additionally a rotated gravitational force is applied such that the containing wall represents a ramp with \SI{30}{\degree} inclination. All spheres have an initial velocity down the ramp. This scenario is illustrated in Fig.~\ref{fig:Scenarios} b). This scenario is chosen because the distribution of computation time is different to the previous scenario. The communication is less significant since more of the computation time is spent inside the collision detection/resolution phase (see Fig.~\ref{fig:RuntimeDistribution}). For the experiment the simulation domain is partitioned only in the x and y direction since the height of the simulation stays the same. For the weak-scaling scenario each domain contains \num{4000} particles. The strong-scaling experiment uses the same scenario but with a simulation domain of fixed size. The number of particles per process ranges from \num{20480} particles on \num{1024} nodes to \num{731} on \num{28672} nodes.

Again we expect the same behaviour for both algorithms as only next neighbor communication is used. The graphs in Fig.~\ref{fig:scaling} c) and d) show the weak- and strong-scaling. The weak-scaling for both algorithms shows no performance loss even for the full-machine runs. For the strong-scaling case the parallel efficiency drops to approximately \SI{78}{\percent} for both algorithms in the largest simulations. Compared to the sparse scenario this is significantly less. Since the computation time of the simulation is directly related to the number of collisions, each particle requires more computation time in the dense scenario. Therefore particle independent effects like latency and maintenance start to dominate at fewer particles leading to a better overall strong scaling. Looking at the absolute performance difference between the two algorithms we can conclude that for dense particle ensembles the improved functionality of SOS induces only insignificant extra costs.

\subsubsection{Large Particle Scenario}
Since the SOS was specifically developed to tackle problems with large particles one scenario of this category is also evaluated. NNS cannot be applied here therefore only the SOS is studied. For a bidisperse scenario with spherical particles of two radii is chosen. The smaller particle always has radius 1 whereas the larger particle has a radius of 30 in the weak-scaling experiment and 15 in the strong-scaling experiment. A simulation area of $80 \times 80 \times 80$ is used as a building block. The complete simulation domain is then constructed by placing these building blocks adjacent to each other. The building block is depicted in Fig.~\ref{fig:Scenarios} c). It is partitioned into $4 \times 4 \times 4$ subdomains resulting in subdomains with an edge length of \num{20}. Each subdomain is assigned to exactly one process. In the center of this building block a large spherical particle is introduced. The rest of the simulation area is filled with small particles arranged on a simple cubic lattice. All particles are given a random initial velocity.

For this scenario the results for weak- and strong-scaling can be found in Fig.~\ref{fig:scaling} e) and f). The SOS shows superb weak-scaling also in this kind of scenario up to the full machine. In the strong-scaling case one can observe a breakdown in performance starting at \num{512} nodes. This can be explained as follows. Since the large particle is positioned at a 3d corner where eight subdomains meet it overlaps all of them. For \num{512} nodes each subdomain is $20 \times 20 \times 20$ in size. From now on every further refinement of the domain leads to an increase of the number of subdomains that the particle overlaps. As a consequence the communication volume increases considerably and the performance deteriorates.

Note that the absolute PUpCS depend on the number of collisions per particle. Since the time needed for collision resolution is directly related to the number of collisions a dense scenario will always achieve less PUpCS than a sparse scenario. This can also be seen in Fig.~\ref{fig:scaling}.

	\begin{sidewaystable}
		\centering
		\begin{tabular}{llll}
			\toprule
			parameter & sparse & dense & large \\
			\midrule
			weak-scaling domain size (per process) & $20 \times 20 \times 20$ & $20 \times 17.3 \times 8$ & $20 \times 20 \times 20$ \\
			strong-scaling domain size (total) & $2560 \times 1280 \times 1280$ & $4096 \times 3547 \times 8$ & $640 \times 640 \times 640$ \\
			domain partitioning & 3d & 2d & 3d \\
			lattice structure~\cite{J.R.Hook1991} & sc & hcp & sc \\
			grid spacing & 1 & 1 & 1 \\
			sphere radius & 0.4 & 0.5 & 0.4 \\
			large particle radius & - & - & 30(15) \\
			initial $v_\text{max}$ & $\left[-0.1, +0.1\right]$ & 0.1 & $\left[-0.1, +0.1\right]$ \\
			time step length & 1 & 0.01 & 0.1 \\
			time steps & 1000(500) & 1000(300) & 1000(100) \\
			\bottomrule
		\end{tabular}
		\caption{Simulation parameters for each scenario. Values given in brackets refer to the strong scaling case. If a range is given for $v_\text{max}$ it means that every component of the vector is a random value in that range. The number of time steps refers to the number of time steps used to build the average of the simulation time used.}
		\label{table:ScalingParameters}
	\end{sidewaystable}

\subsection{Direct Comparison of both Algorithms}
	\label{sec:Comparison}
	\begin{figure}
		\centering

		\subfloat[domain partitioning with a subdomain edge length of 20]{
		\begin{tikzpicture}[scale=0.04]
			\draw [black, step=20.0, very thick] (0.0,0.0) grid (80,80);
			\draw [red, dotted, very thick] (40,40) circle [radius=20];
			\draw [red, dotted, very thick] (40,40) circle [radius=15];
			\draw [red, dotted, very thick] (40,40) circle [radius=10];
			\draw [red, dotted, very thick] (40,40) circle [radius= 5];
			\draw [black, thick, decorate, decoration={brace,amplitude=10pt,mirror,raise=4pt},yshift=0pt] (80, 0) -- (80,20) node [black,midway,xshift=+0.8cm] {20};
			\draw [black, thick, decorate, decoration={brace,amplitude=10pt,mirror,raise=4pt},yshift=0pt] (60, 0) -- (80, 0) node [black,midway,yshift=-0.8cm] {20};

			\draw [blue, dashed, very thick] (40,40) circle [radius=40];
			\draw [blue, dashed, very thick] (40,40) circle [radius=35];
			\draw [blue, dashed, very thick] (40,40) circle [radius=30];
			\draw [blue, dashed, very thick] (40,40) circle [radius=25];

		\end{tikzpicture}
		}
		\hspace{1cm}
		\subfloat[domain partitioning with a subdomain edge length of 10]{
		\begin{tikzpicture}[scale=0.04]
			\draw [black, step=10.0, very thick] (0.0,0.0) grid (80,80);
			\draw [red, dotted, very thick] (40,40) circle [radius=10];
			\draw [red, dotted, very thick] (40,40) circle [radius= 5];
			\draw [black, thick, decorate, decoration={brace,amplitude=10pt,mirror,raise=4pt},yshift=0pt] (80, 0) -- (80,20) node [black,midway,xshift=+0.8cm] {20};
			\draw [black, thick, decorate, decoration={brace,amplitude=10pt,mirror,raise=4pt},yshift=0pt] (60, 0) -- (80, 0) node [black,midway,yshift=-0.8cm] {20};

			\draw [blue, dashed, very thick] (40,40) circle [radius=40];
			\draw [blue, dashed, very thick] (40,40) circle [radius=35];
			\draw [blue, dashed, very thick] (40,40) circle [radius=30];
			\draw [blue, dashed, very thick] (40,40) circle [radius=25];
			\draw [blue, dashed, very thick] (40,40) circle [radius=20];
			\draw [blue, dashed, very thick] (40,40) circle [radius=15];

		\end{tikzpicture}
		}

		\caption{Illustration of the domain partitioning used for the bidisperse setup. The extension of the large centered sphere for different configurations is indicated by additional circles. All configurations (dashed and dotted circles) can be simulated with the proposed SOS whereas only the dotted red ones can be simulated with the traditional NNS.}
		\label{fig:SimulationArea}
	\end{figure}

In this section we evaluate the parallel performance for different particle size ratios. This demonstrates the extended functionality of SOS and at the same time allows to examine the performance cost in more detail. The setup is similar to the third scenario of the last paragraph. The same building block is used but the radius of the large particle in the center is varied. To reduce fluctuation of the time measurement a grid of $4 \times 4 \times 4$ of these building blocks is simulated. We use the same domain partitioning into $4 \times 4 \times 4$ subdomains per building block as in the third scenario of the last paragraph and add an additional experiment with a finer partitioning of $8 \times 8 \times 8$. The domain partitioning as well as the different sizes of the large particle are illustrated in Fig.~\ref{fig:SimulationArea}. All particle sizes can be simulated with SOS but only those large particles which are marked by a dotted red line can be simulated with NNS. As long as the radius of the large sphere is not larger than the edge length of one subdomain both synchronization methods can be used. When the radius reaches a certain value only the SOS can be used. These radii are indicated by blue dashed circles. For the first domain partitioning into $4 \times 4 \times 4$ subdomains \num{4096} processes are needed to run and for the second one \num{32768}. All possible setups are run and the achieved performance is compared in Fig.~\ref{fig:SyncProtocolSparse}.

	\begin{figure}
		\centering
		\includegraphics[width = 0.8\textwidth]{ComparisonSparse}
		\caption{Both synchronization methods are compared in a bidisperse scenario for two different domain partitionings. The edge length of one subdomain is given behind the name of the synchronization method. The radius of the large particles is varied and given on the x axis. The surrounding area is sparsely filled with spherical particles of radius \num{0.4}.}
		\label{fig:SyncProtocolSparse}
	\end{figure}

As the previous experiments already suggest, the SOS achieves about \SI{80}{\percent} of the PUpCS of NNS. However SOS can be applied to a wider range of scenarios. This can be seen by the fact that for SOS all data points are available whereas the graphs for NNS stop when it is impossible to simulate the next particle radius. The overall performance decreases moderately when the radius of the large particle increases. A large particle radius leads to an increased amount of communication as it overlaps more subdomains. Note also that processes whose subdomains are completely covered by a large particle will be idle which further decreases the performance. This effect could be overcome by sophisticated load balancing algorithms which however are outside the scope of this paper. The performance also drops if we progress to a finer domain subdivision. For a subdomain edge length of \num{20} roughly \num{8000} particles are located in each subdomain. If we use a partitioning with a subdomain edge length of \num{10} only \num{1000} particles remain per subdomain. When the workload per process is so small, a further loss in efficiency is unavoidable (compare Fig.~\ref{fig:scaling}b)).

	\begin{figure}
		\centering
		\includegraphics[width = 0.8\textwidth]{ComparisonDense}
		\caption{The same setup is used as in Fig.~\ref{fig:SyncProtocolSparse} but the area surrounding the large particles is now densely filled with spherical particles of radius \num{0.98}.}
		\label{fig:SyncProtocolDense}
	\end{figure}

We repeat the measurements with a denser setup. For that the small spherical particles are arranged on a hexagonal close packing lattice with spacing \num{1} and a radius of \num{0.4}. This setup consists of slightly more particles and also the number of collisions is higher due to the dense packing. Fig.~\ref{fig:SyncProtocolDense} shows the performance data for this setup. As anticipated form the previous scaling experiments both synchronization methods yield almost the same PUpCS. The SOS achieves roughly \SI{90}{\percent} of the PUpCS of NNS. And also the general trend is the same as for the sparse setup due to the same reasons.

\section{Conclusion}
\label{sec:Conclusion}
In this paper we have presented a solution to resolve a limitation of the NNS algorithm used in rigid body dynamics. The NNS only exchanges information with next neighbors. Therefore no particle is allowed to extend into subdomains past direct adjacent ones. We have proposed a new synchronization algorithm which uses a minimal amount of point-to-point communications to exchange the needed information even with subdomains which are not adjacent. New shadow particles are created with a diffusive approach. Careful bookkeeping and caching are applied to efficiently implement this algorithm. We then have shown that this algorithm scales as well as the NNS in various scenarios up to \num{1835008} processes on the Juqueen supercomputer. We have also shown that for dense scenarios the NNS method can be replaced by our newly proposed SOS with only a moderate performance penalty. Eventually we have applied our new method to scenarios which previously could not have been simulated and showed a broader range of simulations which are now possible. Further improvements could be gained by introducing advanced load balancing techniques reducing the number of of idling processes in scenarios with large particles. Since the synchronization protocol is independent of the contact model both the NNS as well as our new SOS can be used in conjunction with various interaction solvers. This enables our synchronization method to be easily adapted to for example molecular dynamics.

\section*{Acknowledgment}
The authors gratefully acknowledge the Gauss Centre for Supercomputing e.V. (www.gauss-centre.eu) for funding this project by providing computing time through the John von Neumann Institute for Computing (NIC) on the GCS Supercomputer JUQUEEN at Jülich Supercomputing Centre (JSC).

The authors would like to acknowledge the support through the Cluster of Excellence Engineering of Advanced Materials (EAM).

Declaration of interest: none

\section*{References}

redpajama_set_name: RedPajamaArXiv


What is a total work of art? Those familiar with Richard Wagner will jump in first to correct the English with the German "Gesamtkunstwerk" and describe, starry-eyed, Wagner's vision of a totalizing performance space in which all the arts—architecture, music, poetry—are perfectly fused. But Houston Grand Opera's Das Rheingold, a co-production with Palau de les Arts Reina Sofia, Valencia, and Maggio Musicale, Florence, makes me wonder if we ever really understood a total work of art until now. Extraordinary doesn't even begin to describe the experience.
Das Rheingold is the first in Wagner's epic tetralogy, the Ring Cycle. This opera lays the narrative foundation. As its title suggests, Das Rheingold establishes where the magical gold originates, how it gets forged into a powerful ring, and how it portends the inevitable demise of the gods and Valhalla.
What you might not expect, though, is that this production also establishes that the two giants, Fasolt and Fafner, are supported by 800-pound cranes that come from the same metal shop as Sigourney Weaver's fighting machine in Alien, and that Loge, the god of fire, is a devil with a Segway. Don't be surprised to find yourself pondering factory farming as golden forms, hung by their heels, are rolled across the background in an assembly line or reminiscing about the Matrix as golden embryos are packed and sealed against a complex set of data and industrial piping. And I haven't even gotten to the acrobatics, fire breather, and flying fish tanks yet.
Individually, these elements would be strange (although Loge on a Segway is a stroke of genius no matter what). What set designer Roland Olbeter, costume designer Chu Uroz, lighting designers Peter van Praet and Gianni Paolo Mirenda and video designer Franc Aleu have made together is no less than a visual artistic masterpiece. Architecture: check.
The vocal cast is a power house. The three Rhinemaidens, Andrea Carroll, Catherine Martin, and Renée Tatum, open the opera with a trio de force while still managing to seductively splash around in square, suspended tanks. Baritone Christopher Purves, in the role of the unsightly Alberich, dances around below them while exemplifying vocal agility. As Fricka, mezzo-soprano Jamie Barton tears it up with a voice full of passionate steel. Iain Paterson reigns as Wotan with a mighty bass-baritone—forceful and commanding.
Most memorable of all, tenor Stefan Margita offers an invigorated interpretation of Loge, and it's not just because he's floats around the stage on mechanized wheels. Costumed in a shiny white cape lit up with red LED bulbs, Margita leaves an impression. Das Rheingold is the only opera of the Ring Cycle in which Loge plays a major role (later you'll briefly see him set a ring of fire around Brünnhilde and, later still, light up Valhalla), and it's a shame. Margita sings purposefully without it feeling purposeful. He is such a good performer it is easy to forget he's acting. The tenor timbre that so rarely even borders on the fullness that baritones achieve, is, for Margita, a given of breadth and sophistication. I'm tempted to say he is a total work of art himself.
And the orchestra, conducted by the indefatigable Patrick Summers, captures Wagner's ideal: although there were a few horn blunders, I hardly cared because the score was practically unnoticeable as a separate entity. Music: check.
But the most pressing reason this production redefines Gesamtkunstwerk is that there is poetry in the experience I can't put into words. It envelopes you and transports you to another land in another time as only a true total work of art can.
Das Rheingold runs April 11- April 26, and many shows are already sold out, so book it now and don't miss this singular production.
Thank you for your honorable mention and feedback! There is not many opportunities for a firebreather to get recognized in the public domain and this is truly an honor and a pleasure to be a part of such a monumental, historical production with an institution like the Houston Grand Opera.


This image depicts colon cancer staging starting with a benign poylp in the large intestine (colon).
Stage 0 shows only the innermost layer, or mucosa, of the colon infiltrated by cancer.
Stage I (Dukes A), cancer has spread to the connective tissue submucosa.
Stage II (Dukes B), cancer has invaded the muscular layer of the colon.
Stage III (Dukes C), the cancer has spread through the wall of the colon into nearby lymph nodes.
Stage IV, the cancer has metastasized or spread throughout the body.
A cancerous poylp is called an adenoma.


text:
Torah and Technology
JCT's new Torah and Technology Research Center will provide the diverse, specialized expertise needed to respond to the complex ethical and Halachic issues of our times.
Tackling the intersection of Torah and technology
By Stuart Hershkowitz
Alexa, can you turn off those lights in the kitchen?
The rapid pace of technological development and innovation has many Shabbat-observant Jews asking how can Alexa fit into their Shabbat observance. In fact, this is just one of the numerous contemporary questions which find themselves at the intersection of Torah and modern technology.
Is it permissible to ride in an autonomous vehicle on Shabbat? Can "meat" grown from the cells of a pig be kosher, or even parve? The possibilities — and their associated consequences — are seemingly endless.
These new-age grey areas within Halacha (Jewish law) stem from the rapid ongoing development of the worlds of Torah and technology. Today's Halachic and rabbinic authorities not only struggle to keep up with the flood of questions regarding issues that never previously existed, but, in many cases, they also lack the technological expertise necessary to understand the full scope of those issues.
Until now, there has been no centralized, scholarly body equipped to organically tackle the multitude of the Halachic implications and questions that arise as a result of modern technology. But the Jerusalem College of Technology (JCT) has now launched that very entity — the first-of-its-kind Torah and Technology Research Center, which will provide the diverse, specialized, expertise which is needed to respond to the complex ethical and Halachic issues of our times. The expertise will be culled from a unique combination of rabbinic scholars and engineering professors functioning within the kind of mutually supportive environment needed for such a joint effort to succeed.
Previously unimagined collaborations between Halachic experts and renowned faculty members from JCT's computer science, engineering, and health sciences departments, will provide a groundbreaking centralized authority for the international Jewish community on the interplay between Torah and modern technology. The center will also work with other organizations (both companies and not-for-profits) to facilitate the development of innovative technologies specifically adapted to meet Halachic requirements for Shabbat, among other areas; publish both advanced scholarly treatises and readily accessible academic material for the public; and host international symposia that will bring leading experts from around the world to JCT to discuss the most recent innovations and developments on both the Halachic and technological fronts. An innovative web-based forum will allow the Center to also encourage public engagement in the discussion of these topics with an eye towards identifying new approaches and new ideas and with the hope that we can enhance communal understanding, connection, and broad buy-in with some of the more complex topics and futuristic innovations.
The Torah and Technology Research Center will operate under the direction of internationally respected posek (Halachic decisor) Rabbi Yosef Tzvi Rimon, head of JCT's yeshiva and Jewish studies programs. Rabbi Rimon's unique qualifications to lead the center are reflected in his Halachic writings, which are known for taking readers from the Torah sources to the practical application of Halacha in our modern world within the framework of a user-friendly, pedagogical methodology. This includes his most recently published work, "Shabbat," a two-volume set of books (the prelude to a planned 7 volume series) which features a comprehensive analysis of the prohibitions of Shabbat.
At the same time, on an institution-wide level, JCT is in a unique position to support this groundbreaking center due to its abundance of religiously and technologically sophisticated faculty and students, spanning the range of the orthodox Jewish World from Haredi to Dati Leumi. Unpacking the Torah-technology balance in Halachic decision-making is a natural extension of JCT's institutional ethos of encouraging students to integrate Torah studies into their day to day academic life.
Further, the center cuts to the core of the college's founding vision.
The original blueprint of JCT's founder and first president, Prof. Ze'ev Lev, was to establish a higher education institution that would educate bnei torah (seriously religious Torah students) with a special sensitivity to the State of Israel's greatest needs. For instance, when JCT's Electro-optics Engineering Department was launched in 1969, it was the first of its kind in Israel and among the first in the world. Prof. Lev saw the need and JCT's students delivered, using their unique training in an emerging field to pioneer the technologies which continue to ensure the safety of countless Israeli citizens. Today, the electro-optics expertise emanating from JCT's campus holds the key to the high-speed communication and imaging capabilities that feed Israel's defense sector and its booming tech start-up scene.
Extending beyond engineering, the same vision is embodied in other programs at the college. Addressing the Jewish state's severe shortage of nurses — as the country stands near the bottom of the OECD in nurse-to-patient ratio — JCT's Nursing Department has been ranked first among its over 20 peer institutions nationwide by the Israeli Ministry of Health.
Now, through the nascent Torah and Technology Research Center, JCT is once again filling a pressing need — not just for Israel, but for all of the Jewish people, as they address contemporary questions and concerns at the interface of technology and Halacha.
PrevPreviousNursing graduation ceremony includes male grads!
NextMK Yizhar Shai from the Blue and White Party visits JCTNext


text:
Stuarts Draft student shares human trafficking experience
Falon Smith, a junior at Stuarts Draft High School, told her classmates about almost becoming a human trafficking victim.
Stuarts Draft student shares human trafficking experience Falon Smith, a junior at Stuarts Draft High School, told her classmates about almost becoming a human trafficking victim. Check out this story on newsleader.com: http://www.newsleader.com/story/news/local/2016/02/26/stuarts-draft-student-shares-human-trafficking-experience/80988450/
Megan Williams, mwilliams@newsleader.com Published 2:42 p.m. ET Feb. 26, 2016 | Updated 4:02 p.m. ET Feb. 2, 2017
Students participate in a presentation on human trafficking.
Falon Smith shared her experience with almost becoming a human trafficking victim during a video to classmates on Friday.(Photo: Submitted)
STUARTS DRAFT — Falon Smith was 14 years old when a text message almost took her down an abyss.
On Jan. 30, 2013, she received a text message from a random number from someone claiming to be a 28-year-old from Harrisonburg. Smith didn't know him, but curiosity and the encouragement of friends compelled her to start a texting relationship with the person on the other end. Things quickly turned sexual and Smith began to freak her out. She hadn't told anyone but her friends about the guy and tried to get him to stop texting her. But for every text Smith sent, so did the guy on the other end. Smith reminded him she was 14 and he started claiming to be younger and younger. He went from 28 years old, to 22 to 18.
Smith shared this harrowing tale with more than 200 of her peers Friday, when she recounted the incident in a video at the Stuarts Draft High School.
THE NEWS LEADER
'American Girls,' an alarming study of teens and social media
Now a junior at Stuarts Draft High School, Smith was in eighth grade when she had a brush with possible death and almost became a victim of human trafficking.
The idea of human trafficking in the Valley can be hard for students to grasp, said Martha Mikell, science teacher and adviser for the club Students Against Destructive Decisions. Human trafficking is something that happens in other towns and cities in the country. Not in Stuarts Draft.
But the scary thing is, Mikell told students during a presentation Friday on human trafficking, with the Interstate 81 and Interstate 64 corridors in their backyard, human trafficking can and does happen, even in Stuarts Draft.
It's something Smith now knows all too well.
Catching a predator
When Smith's predator wouldn't desist, she finally alerted her parents to the situation. Her parents, understandably concerned for their daughter's safety and distressed by the content of the text messages, alerted a police officer who was also a family friend.
The Augusta County Sheriff's Office quickly got involved and a sting operation netted Isauro Monroy on Feb. 4, 2013, in the parking lot of the Staunton Mall, where he believed he was going to meet Smith. Involved with the sting operation was Deputy Janell Hammersberg, resource officer for Stuarts Draft High School. At the time she didn't know Smith, but now the two have a close bond.
During interrogation, Monroy revealed his plan to either abduct Smith to Mexico and make her a sex slave, or to bring her back to Harrisonburg, rape her and then kill her. He served a year in jail and was deported back to Mexico.
The impact it had on Smith and her family was profound. Having her sense of safety and peace stripped from her, Smith began therapy and was put on medication. She slept in her parent's bedroom, afraid that Monroy or members of his family would come after her in retribution.
Friend of slain teen told school about older man
Smith sat quietly with friends and family, who wept during the video. After it played through the harrowing tale, Smith briefly addressed the crowd and advised students to be cautious, and that human trafficking could happen to anyone, anywhere. Of all the numbers Monroy could have picked — and he likely sent out many — he chose Smith's number.
Hammersberg also reiterated Smith's warning and told students to be particularly cautious when posting to social media.
"These kids have no idea," she said. "I guarantee each of them has a 'friend' on Facebook that they don't actually know."
Hammersberg also thanked Smith for showing the courage to talk about something so painful in front of other students.
Learning from experience
Along with Smith's powerful presentation, students were asked to participate in an "experiential walk-through." They were asked to enter the gym through one of two doors, one representing the mall and one a fast food restaurant. Once inside they were given a scenario and a few actions they could take based on the situation. Depending on what they chose, they were given a red sticker or a green sticker and asked to sit in a green or red section in the bleachers.
About a third of the students sat in the red section the rest in the green. Those in the red section had chosen a scenario that led to human trafficking, said Rhonda Pedigo, a Verona Elementary School employee and a member of the Women's Missionary Union of Virginia. It's through this organization that Pedigo travels around the state giving presentations about the dangers of human trafficking. Pedigo coordinated the event with Mikell. Students in the SADD club were invited to attend and to bring a friend.
"I do this experiential walk-through to show students how easy it is to be trafficked based on everyday decisions," she said.
Students at Stuarts Draft High School participate in a human trafficking experiential walk through on Friday to learn about the threat of it here in the Valley. (Photo: Megan Williams/The News Leader)
Read or Share this story: http://www.newsleader.com/story/news/local/2016/02/26/stuarts-draft-student-shares-human-trafficking-experience/80988450/
Sheriff's Office: Woman stole $145,000 from elderly man
Staunton Rite Aid closing: What people are saying
Augusta County manslaughter trial postponed
New alternative school for Waynesboro and county students this year


Raazi actress Amruta Khanvilkar got new fan in co-actor Vicky Kaushal!
Amruta Khanvilkar is all set for her upcoming Bollywood movie titled 'Raazi' starring Alia Bhatt and Vicky Kaushal. The movie is produced by Karan Johar's 'Dharma Productions' and helmed by Meghna Gulzaar. During the shoot, Amruta got to know that her co-actor, Vicky is in love with her dance-moves.
"It was so overwhelming to hear it from an actor like Vicky, who has given fabulous performance in film Masaan. That night after pack up, he made me dance on 'Vajale Ki Bara' and even asked me to teach him the signature steps'" she giggles.
"Every year, on the occasion of International Dance Day, I am asked about my dancing idol. But, this year, I feel great that there is someone who likes and appreciates my dancing too. I love such people who make you feel good about yourself, because with that, we grow each day to strive better." said Amruta.