Demo Data from EDBT 2026 / reviewers in the wild / expert
Milenko Drinic
dblp:35/5867
· DBLP profile ↗
14ranked-venue papers
9as first author
0since 2021 · last 2007
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 10 · 5 first-authorSoftware engineering, systems software and programming languages · 3 · 2 first-authorDatabases, data management, data science and information retrieval · 2 · 2 first-authorGraphics, computer vision, multimedia, augmented reality and games · 2 · 2 first-authorComputer networks · 1 · 1 first-author
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Computer architecture, parallel and distributed computing, and storage systems
6 papers |
Electronic design automation · 78% Interconnection networks and networks-on-chip · 9% Processor architecture and microarchitecture · 5% | |
| Network and information security
3 papers |
Systems and software security · 41% Network security · 41% Digital forensics and information hiding · 18% | |
| Computer networks
1 paper |
Routing and switching · 93% Wireless networking · 7% | |
| Software engineering, system software, and programming languages
2 papers |
Compilers and program optimization · 100% |
Topics — the 24 heaviest of 26, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Electronic design automation › physical design
floorplanning |
0.1 | 2 | 2006 | Latency-Guided On-Chip Bus-Network Design · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2006 Latency-Driven Design of Multi-Purpose Systems-On-Chip · DAC 2001 |
Electronic design automation
physical design |
0.1 | 2 | 2006 | Latency-Guided On-Chip Bus-Network Design · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2006 Latency-Driven Design of Multi-Purpose Systems-On-Chip · DAC 2001 |
Electronic design automation › high-level synthesis › behavioral transformation
behavioral synthesis |
0.1 | 2 | 2005 | Engineering change protocols for behavioral and system synthesis · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2005 Behavioral synthesis via engineering change · DAC 2002 |
Electronic design automation › design methodology
engineering change |
0.1 | 2 | 2005 | Engineering change protocols for behavioral and system synthesis · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2005 Behavioral synthesis via engineering change · DAC 2002 |
Electronic design automation
high-level synthesis |
0.1 | 2 | 2005 | Engineering change protocols for behavioral and system synthesis · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2005 Behavioral synthesis via engineering change · DAC 2002 |
Network security › attack resilience › attack mitigation
intrusion prevention |
0.1 | 2 | 2004 | A Hardware-Software Platform for Intrusion Prevention · MICRO 2004 Enabling trusted software integrity · ASPLOS 2002 |
Compilers and program optimization › code size reduction
code compression |
0.1 | 1 | 2007 | PPMexe: Program compression · ACM Trans. Program. Lang. Syst. 2007 |
Electronic design automation › hardware verification and test › debugging
design error correction |
0.1 | 1 | 2005 | Engineering change protocols for behavioral and system synthesis · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2005 |
Systems and software security › memory safety
control-flow integrity |
0.0 | 1 | 2004 | A Hardware-Software Platform for Intrusion Prevention · MICRO 2004 |
Routing and switching
ad hoc network routing |
0.0 | 1 | 2003 | Model-based compression in wireless ad hoc networks · SenSys 2003 |
Routing and switching › forwarding table
forwarding table compression |
0.0 | 1 | 2003 | Model-based compression in wireless ad hoc networks · SenSys 2003 |
Routing and switching
routing protocol |
0.0 | 1 | 2003 | Model-based compression in wireless ad hoc networks · SenSys 2003 |
Routing and switching › routing tables
routing table management |
0.0 | 1 | 2003 | Model-based compression in wireless ad hoc networks · SenSys 2003 |
Systems and software security
software integrity |
0.0 | 1 | 2002 | Enabling trusted software integrity · ASPLOS 2002 |
Digital forensics and information hiding
watermarking |
0.0 | 1 | 2002 | Watermarking integer linear programming solutions · DAC 2002 |
Processor architecture and microarchitecture
hardware-assisted security |
0.0 | 1 | 2002 | Enabling trusted software integrity · ASPLOS 2002 |
Integrated circuit design › system-on-chip
system-on-chip design |
0.0 | 1 | 2001 | Latency-Driven Design of Multi-Purpose Systems-On-Chip · DAC 2001 |
Performance modeling and evaluation › profiling
communication profiling |
0.0 | 1 | 2006 | Latency-Guided On-Chip Bus-Network Design · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2006 |
Wireless networking
mobile ad hoc networks |
0.0 | 1 | 2003 | Model-based compression in wireless ad hoc networks · SenSys 2003 |
Compilers and program optimization
secure compilation |
0.0 | 1 | 2002 | Enabling trusted software integrity · ASPLOS 2002 |
Mathematical optimization
integer programming |
0.0 | 1 | 2002 | Watermarking integer linear programming solutions · DAC 2002 |
Distributed systems › distributed communication › data dissemination
content distribution |
0.0 | 1 | 2001 | Hypermedia-Aided Design · DAC 2001 |
Electronic design automation › hardware verification and test
hardware verification |
0.0 | 1 | 2001 | Latency-Driven Design of Multi-Purpose Systems-On-Chip · DAC 2001 |
Electronic design automation › hardware verification and test
timing verification |
0.0 | 1 | 2001 | Latency-Driven Design of Multi-Purpose Systems-On-Chip · DAC 2001 |
Methods — techniques the papers use, named apart from their topics
runtime verification · 0.1encrypted constraints · 0.1satisfiability · 0.1prediction by partial matching · 0.1integer linear programming · 0.1instruction rescheduling · 0.1heuristic partitioning · 0.1floorplanning · 0.1communication profiling · 0.1pre- and post-processing · 0.1constraint manipulation · 0.1speculative execution · 0.0basic block reordering · 0.0MAC verification · 0.0trajectory prediction · 0.0region-based compression · 0.0markov model · 0.0engineering change · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2007 | PPMexe: Program compressionabstractWith the emergence of software delivery platforms, code compression has become an important system component that strongly affects performance. This article presents PPMexe, a compression mechanism for program binaries that analyzes their syntax and semantics to achieve superior compression ratios. We use the generic paradigm of prediction by partial matching (PPM) as the foundation of our compression codec. PPMexe combines PPM with two preprocessing steps: ( i ) instruction rescheduling to improve prediction rates and ( ii ) heuristic partitioning of a program binary into streams with high autocorrelation. We improve the traditional PPM algorithm by ( iii ) using an additional alphabet of frequent variable-length supersymbols extracted from the input stream of fixed-length symbols. In addition, PPMexe features ( iv ) a low-overhead mechanism that enables decompression starting from an arbitrary instruction of the executable, a property pivotal for runtime software delivery. We implemented PPMexe for x86 binaries and tested it on several large applications. Binaries compressed using PPMexe were 18--24% smaller than files created using off-the-shelf PPMD, one of the best available compressors Milenko Drinic, Darko Kirovski, Hoi Vo |
ACM Trans. Program. Lang. Syst. | 1 |
| 2006 | Latency-Guided On-Chip Bus-Network DesignabstractDeep submicrometer technology scaling has two major ramifications on the design process. First, reduced feature size significantly increases wire delay, thus resulting in critical paths being dominated by global interconnect rather than gate delays. Second, an ultrahigh level of integration mandates design of systems-on-chip that encompass numerous design blocks of decreased functional granularity and increased communication demands. The convergence of these two factors emphasizes the importance of the on-chip bus network as one of the crucial high-performance enablers for future systems-on-chip. An on-chip bus-network design methodology and corresponding set of tools which, for the first time, close the synthesis loop between system and physical design have been developed. The approach has three components: a communication profiler, a bus-network designer, and a fast approximate floorplanner. The communication profiler collects run-time information about the traffic between system cores. The bus-network design component optimizes the bus-network structure by coordinating information from the other two components. The floorplanner aims at creating a feasible floorplan; it also sends feedback about the most constrained parts of the network. The effectiveness of our bus-network design approach on a number of multicore designs is demonstrated Milenko Drinic, Darko Kirovski, Seapahn Megerian, Miodrag Potkonjak |
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. | 1 |
| 2005 | Engineering change protocols for behavioral and system synthesisabstractRapid prototyping and development of in-circuit and FPGA-based emulators as key accelerators for fast time-to-market has resulted in a need for efficient error correction mechanisms. Fabricated or emulated prototypes upon error diagnosis require an effective engineering change (EC). We introduce a novel design methodology which consists of pre- and post-processing techniques that enable EC with minimal perturbation. Initially, in a synthesis preprocessing step, the original design specification is augmented with additional design constraints which ensure flexibility for future correction. Upon alteration of the initial design, a new post-processing technique achieves the desired functionality with near-minimal perturbation of the initially optimized design. The key contribution is a constraint manipulation technique which enables the reduction of an arbitrary EC problem into its corresponding classical synthesis problem. As a result, in both pre- and post-processing for EC, classical synthesis algorithms can be used to enable flexibility and perform the correction process. We demonstrate the developed EC methodology on a set of behavioral and system synthesis tasks. Darko Kirovski, Milenko Drinic, Miodrag Potkonjak |
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. | 2 |
| 2004 | A Hardware-Software Platform for Intrusion PreventionabstractPreventing execution of unauthorized software on a given computer plays a pivotal role in system security. The key problem is that although a program at the beginning of its execution can be verified as authentic, its execution flow can be redirected to externally injected malicious code using, for example, a buffer overflow exploit. We introduce a novel, simplified, hardware-assisted intrusion prevention platform. Our platform introduces overlapping of program execution and MAC verification. It partitions a program binary into blocks of instructions. Each block is signed using a keyed MAC that is attached as a footer to the block. When the control flow reaches a particular block, its instructions are speculatively executed, while dedicated hardware verifies the attached MAC at run-time. The computation state is preserved during speculative execution using a mediating buffer placed between the processor and L1 data cache. Upon MAC verification, the results from this buffer are propagated externally. Central to this paper is the proposal of a novel optimization technique that initially identifies instructions that are likely to stall execution, and reorders basic blocks within a given instruction block to minimize the execution overhead. While the presented optimization technique is problem specific, it is flexible such that it can be adjusted for different optimization goals. Preliminary results showed that our optimization methods produced an average overhead reduction of 60% on the SPEC2000 benchmark suite and Microsoft Visual FoxPro. Milenko Drinic, Darko Kirovski |
MICRO | 1 |
| 2003 | Code Optimization for Code CompressionabstractWith the emergence of software delivery platforms such as Microsoft's .NET, the reduced size of transmitted binaries has become a very important system parameter, strongly affecting system performance. We present two novel pre-processing steps for code compression that explore program binaries' syntax and semantics to achieve superior compression ratios. The first preprocessing step involves heuristic partitioning of a program binary into streams with high auto-correlation. The second preprocessing step uses code optimization via instruction rescheduling in order to improve prediction probabilities for a given compression engine. We have developed three heuristics for instruction rescheduling that explore tradeoffs of the solution quality versus algorithm run-time. The pre-processing steps are integrated with the generic paradigm of prediction by partial matching (PPM) which is the basis of our compression codec. The compression algorithm is implemented for x86 binaries and tested on several large Microsoft applications. Binaries compressed using our compression codec are 18-24% smaller than those compressed using the best available off-the-shelf compressor. Milenko Drinic, Darko Kirovski, Hoi Vo |
CGO | 1 |
| 2003 | PPM Model CleaningabstractThe prediction by partial matching (PPM) algorithm uses a cumulative frequency count of input symbols in different contexts to estimate its probability distribution. Compression ratios yielded by the PPM algorithm have not instigated broader use of this scheme mainly because of its high demand for computational resources. An algorithm that improves the memory usage by the PPM model is presented. The algorithm identifies and removes portions of the PPM model, which are not contributing toward better modeling of the input data. As a result, our algorithm improves the average compression ratio up to 7% under the memory limitation constraint at the expense of increased computation. Under the constraint of maintaining the same level of compression ratios, the algorithm reduces the memory usage up to 70%. Milenko Drinic, Darko Kirovski, Miodrag Potkonjak |
DCC | 1 |
| 2003 | Model-based compression in wireless ad hoc networksabstractWe present a technique for compression of shortest paths routing tables for wireless ad hoc networks. The main characteristic of such networks is that geographic location of nodes determines network topology. As opposed to encoding individual node locations, at each node our approach groups the remaining nodes in the network into regions. All shortest paths to nodes in a specific region are routed via the same neighboring node. In this paper, we propose an algorithm for dividing a network field into distinct regions to minimize routing table size while guaranteeing shortest path routes. We show that this problem is NP-hard, propose a heuristic to find efficient solutions, and empirically demonstrate the resulting system performance from the perspective of compression ratio and scalability. In our experiments, routing tables compressed using this technique, require 88.9% to 97.9% less storage than uncompressed tables.In order to achieve energy efficient routing, we propose an augmentation to the original routing mechanism that enables load balancing flexibility along with guaranteed shortest path routing at the expense of larger routing tables. Preliminary experiments estimate 10% lifetime extension of network nodes with a tradeoff of an increase in the size of routing tables. Finally, we propose a compression technique that aims at representing trajectories in a sensing network in a compact manner. This approach relies on trajectory prediction using three weighted Markov models, a local, regional and global one, all of them with context-length equal to one. Finally, we discuss a range of possible applications that rely on the developed prediction and routing models. Milenko Drinic, Darko Kirovski, Miodrag Potkonjak |
SenSys | 1 |
| 2002 | Enabling trusted software integrityabstractPreventing execution of unauthorized software on a given computer plays a pivotal role in system security. The key problem is that although a program at the beginning of its execution can be verified as authentic, while running, its execution flow can be redirected to externally injected malicious code using, for example, a buffer overflow exploit. Existing techniques address this problem by trying to detect the intrusion at run-time or by formally verifying that the software is not prone to a particular attack.We take a radically different approach to this problem. We aim at intrusion prevention as the core technology for enabling secure computing systems. Intrusion prevention systems force an adversary to solve a computationally hard task in order to create a binary that can be executed on a given machine. In this paper, we present an exemplary system--SPEF--a combination of architectural and compilation techniques that ensure software integrity at run-time. SPEF embeds encrypted, processor-specific constraints into each block of instructions at software installation time and then verifies their existence at run-time. Thus, the processor can execute only properly installed programs, which makes installation the only system gate that needs to be protected. We have designed a SPEF prototype based on the ARM instruction set and validated its impact on security and performance using the MediaBench suite of applications. Darko Kirovski, Milenko Drinic, Miodrag Potkonjak |
ASPLOS | 2 |
| 2002 | Behavioral synthesis via engineering changeabstractEngineering change (EC) is a technique that enables a designer to rapidly perform minor specification alternations while minimally resynthesizing only small portions of the specification throughout several levels of design abstraction. In this paper, we introduce the first EC-based synthesis technique for coordinated design optimization in multiple steps. The technique has four phases: optimization region identification, feedback formulation, resynthesis in first step, and finally resynthesis in the second design step. To demonstrate the technique, we focus on behavioral synthesis and transformation, scheduling, and register assignment steps. We developed a generic EC-based approach for design optimization during multiple consecutive synthesis steps. Next, we show how one can use EC to enhance coordinated application of transformations and scheduling, and scheduling and register assignment. Milenko Drinic, Darko Kirovski |
DAC | 1 |
| 2002 | Watermarking integer linear programming solutionsabstractLinear programming (LP) in its many forms has proven to be an indispensable tool for expressing and solving optimization problems in numerous domains. We propose the first set of generic watermarking techniques for integer-LP (ILP). The proof of authorship by watermarking is achieved by introducing additional constraints to limit the solution space and can be used as effective means of intellectual property protection (IPP) and authentication. We classify and analyze the types of constraints in the ILP watermarking domain and show how ILP formulations provide more degrees of freedom for embedding signatures than other existing approaches. To demonstrate the effectiveness of the proposed ILP watermarking techniques, the generic discussion is further concretized using two examples, namely Satisfiability and Scheduling. Seapahn Megerian, Milenko Drinic, Miodrag Potkonjak |
DAC | 2 |
| 2002 | PPMexe: PPM for Compressing SoftwareabstractWith the emergence of software delivery platforms such as Microsoft's .NET, code compression has become one of the core enabling technologies strongly affecting system performance. We present PPMexe - a set of compression mechanisms for executables that explores their syntax and semantics to achieve superior compression rates. The fundament of PPMexe is the generic paradigm of prediction by partial matching (PPM). We combine PPM with two pre-processing steps: instruction rescheduling to improve prediction rates and partitioning of a program binary into streams with high auto-correlation. We improve the traditional PPM algorithm by using: an additional alphabet of frequent variable-length super-symbols extracted from the input stream of fixed-length symbols and a low-overhead mechanism that enables decompression starting from an arbitrary instruction of the executable, a feature pivotal for run-time software delivery. PPMexe was implemented for x86 binaries and tested on several large Microsoft applications. Binaries compressed using PPMexe were 16-23% smaller than files created using PPMD, the best available compressor. Milenko Drinic, Darko Kirovski |
DCC | 1 |
| 2001 | Hypermedia-Aided DesignabstractRecently, the Internet revolutionized many activities from entertainment to marketing and business. Two key underlying Internet technologies, efficient data delivery and hypertext, demonstrated exceptional potential as new application enablers. In this paper, we present a novel Hypermedia-Aided Design (HAD) collaboration framework that facilitates new communication and data presentation paradigms to improve the effectiveness of typical EDA applications. The framework leverages on the advantages of using semantic multicast as a communication backbone and quantized hypermedia presentations as an efficient data organization, retrieval, and presentation model. Semantic multicast is a global communication tool that relies on an inter-network of proxies to provide content discovery and semantics-based profile-driven data dissemination services. We introduce the notion of a quant, an atomic interactive multimedia information primitive with embedded hyperlinks. We demonstrate how interest-specific quant retrieval and concatenation can enable more focused collaboration. Darko Kirovski, Milenko Drinic, Miodrag Potkonjak |
DAC | 2 |
| 2001 | Latency-Driven Design of Multi-Purpose Systems-On-ChipabstractDeep submicron technology has two major ramifications on the design process: (i) critical paths are being dominated by global interconnect rather than gate delays and (ii) ultra high levels of integration mandate designs that encompass numerous intra-synchronous blocks with decreased functional granularity and increased communication demands. These factors emphasize the importance of the on-chip bus network as the crucial high-performance enabler for future systems-on-chip. By using independent functional blocks with programmable connectivity, designers are able to build systems-on-chip capable of supporting different applications with exceptional levels of resource sharing. To address challenges in this design paradigm, we have developed a methodology that enables efficient bus network design with approximate timing verification and floorplanning of multi-purpose systems-on-chip in early design stages. The design platform iterates system synthesis and floorplanning to build min-area floorplans that satisfy statistical time constraints of applications. We demonstrate the effectiveness of our bus network design approach using examples from a multimedia benchmark suite. Seapahn Meguerdichian, Milenko Drinic, Darko Kirovski |
DAC | 2 |
| 2000 | Latency-Guided On-Chip Bus Network DesignabstractDeep submicron technology scaling has two major ramifications on the design process. First, reduced feature size significantly increases wire delay, thus resulting in critical paths being dominated by global interconnect rather than gate delays. Second, ultra high level of integration mandates design of systems-on-chip that encompass numerous intra-synchronous blocks with decreased functional granularity and increased communication demands. To address these issues we have developed an on-chip bus network design methodology and corresponding set of tools which, for the first, time, close the synthesis loop between system and physical design. The approach has three components: a communication profiler, a bus network designer, and a fast approximate floorplanner. The communication profiler collects run-time information about the traffic between system cores. The bus network design component optimizes the bus network structure by coordinating information from the other two components. The floorplanner aims at creating a feasible floorplan and to communicate information about the most constrained parts of the network. Milenko Drinic, Darko Kirovski, Seapahn Meguerdichian, Miodrag Potkonjak |
ICCAD | 1 |