We present Trust<T>, a general, type- and memory-safe alternative to locking in concurrent programs. Instead of synchronizing multi-threaded access to an object of type T with a lock, the programmer may place the object in a Trust<T>. The object is then no longer directly accessible. Instead a designated thread, the object's trustee, is responsible for applying any requested operations to the object, as requested via the Trust<T> API. Locking is often said to offer a limited throughput per lock. Trust<T> is based on delegation, a message-passing technique which does not suffer this per-lock limitation. Instead, per-object throughput is limited by the capacity of the object's trustee, which is typically considerably higher. Our evaluation shows Trust<T> consistently and considerably outperforming locking where lock contention exists, with up to 22x higher throughput in microbenchmarks, and 5-9x for a home grown key-value store, as well as memcached, in situations with high lock contention. Moreover, Trust<T> is competitive with locks even in the absence of lock contention.
Holly Wilson, Scott Wellington, Foteini Simistira Liwicki, Vibha Gupta, Rajkumar Saini, Kanjar De, Nosheen Abid, Sumit Rakesh, Johan Eriksson, Oliver Watts, Xi Chen, Mohammad Golbabaee, Michael J. Proulx, Marcus Liwicki, Eamonn O'Neill, Benjamin Metcalfe Decoding inner speech from the brain signal via hybridisation of fMRI and EEG data is explored to investigate the performance benefits over unimodal models. Two different bimodal fusion approaches are examined: concatenation of probability vectors output from unimodal fMRI and EEG machine learning models, and data fusion with feature engineering. Same task inner speech data are recorded from four participants, and different processing strategies are compared and contrasted to previously-employed hybridisation methods. Data across participants are discovered to encode different underlying structures, which results in varying decoding performances between subject-dependent fusion models. Decoding performance is demonstrated as improved when pursuing bimodal fMRI-EEG fusion strategies, if the data show underlying structure.
Feb 20 2020
cs.CV arXiv:2002.08039v1
While the satellite-based Global Positioning System (GPS) is adequate for some outdoor applications, many other applications are held back by its multi-meter positioning errors and poor indoor coverage. In this paper, we study the feasibility of real-time video-based localization on resource-constrained platforms. Before commencing a localization task, a video-based localization system downloads an offline model of a restricted target environment, such as a set of city streets, or an indoor shopping mall. The system is then able to localize the user within the model, using only video as input. To enable such a system to run on resource-constrained embedded systems or smartphones, we (a) propose techniques for efficiently building a 3D model of a surveyed path, through frame selection and efficient feature matching, (b) substantially reduce model size by multiple compression techniques, without sacrificing localization accuracy, (c) propose efficient and concurrent techniques for feature extraction and matching to enable online localization, (d) propose a method with interleaved feature matching and optical flow based tracking to reduce the feature extraction and matching time in online localization. Based on an extensive set of both indoor and outdoor videos, manually annotated with location ground truth, we demonstrate that sub-meter accuracy, at real-time rates, is achievable on smart-phone type platforms, despite challenging video conditions.
Oct 09 2017
cs.NI arXiv:1710.02324v1
After a decade of research in low-power data collection, reaching arbitrary nodes has received comparatively little attention. The leading protocol for low-power IPv6 routing, RPL, is no exception, as it is often studied in multipoint-to-point scenarios. As a result, downward routing (from root to node) is still notoriously difficult, holding back the emergence of Internet of Things applications that involve actuation. In this paper, we focus on achieving industrial-grade reliability levels (1e-5 failure rate) in downward routing with RPL. We make every packet count, and classify the different causes of packet loss. We show how to mitigate each source of packet loss, by (1) introducing a gradient metric that favors reliable links, (2) increasing neighborhood awareness for accurate link selection, and (3) ensuring a robust routing state maintenance and packet forwarding. We demonstrate RPL downward routing with loss rates in the order of 1e-5 in four different testbeds up to 352 nodes, in both sparse and dense settings. We also validate our solution on top of a low-power TSCH scheduler, and achieve sub-percent low duty cycles and a channel utilization of 0.07% at every node, spread over 16 channels.
Invariant-Based Programming (IBP) is a diagram-based correct-by-construction programming methodology in which the program is structured around the invariants, which are additionally formulated before the actual code. Socos is a program construction and verification environment built specifically to support IBP. The front-end to Socos is a graphical diagram editor, allowing the programmer to construct invariant-based programs and check their correctness. The back-end component of Socos, the program checker, computes the verification conditions of the program and tries to prove them automatically. It uses the theorem prover PVS and the SMT solver Yices to discharge as many of the verification conditions as possible without user interaction. In this paper, we first describe the Socos environment from a user and systems level perspective; we then exemplify the IBP workflow by building a verified implementation of heapsort in Socos. The case study highlights the role of both automatic and interactive theorem proving in three sequential stages of the IBP workflow: developing the background theory, formulating the program specification and invariants, and proving the correctness of the final implementation.
In this paper, a novel framework for normative modeling of the spectrum sensing and sharing problem in cognitive radios (CRs) as a transferable utility (TU) cooperative game is proposed. Secondary users (SUs) jointly sense the spectrum and cooperatively detect the primary user (PU) activity for identifying and accessing unoccupied spectrum bands. The games are designed to be balanced and super-additive so that resource allocation is possible and provides SUs with an incentive to cooperate and form the grand coalition. The characteristic function of the game is derived based on the worths of SUs, calculated according to the amount of work done for the coalition in terms of reduction in uncertainty about PU activity. According to her worth in the coalition, each SU gets a pay-off that is computed using various one-point solutions such as Shapley value, \tau-value and Nucleolus. Depending upon their data rate requirements for transmission, SUs use the earned pay-off to bid for idle channels through a socially optimal Vickrey-Clarke-Groves (VCG) auction mechanism. Simulation results show that, in comparison with other resource allocation models, the proposed cooperative game-theoretic model provides the best balance between fairness, cooperation and performance in terms of data rates achieved by each SU.
In this paper the conditions for identifiability, separability and uniqueness of linear complex valued independent component analysis (ICA) models are established. These results extend the well-known conditions for solving real-valued ICA problems to complex-valued models. Relevant properties of complex random vectors are described in order to extend the Darmois-Skitovich theorem for complex-valued models. This theorem is used to construct a proof of a theorem for each of the above ICA model concepts. Both circular and noncircular complex random vectors are covered. Examples clarifying the above concepts are presented.