As CMP became the main stream of processer design, parallel programming is a new challenge for programmer. The execution of the same program may perform much different based on various multi-core architectures. Even the same multi-core processor combined with different mapping strategies are still with distinct performance. How could programmers figure out if their programs, which based on specific multi-processing architectures and mapping strategies, are efficient and even portable? In this paper, we propose Architecture-Based Trace and Evaluation (ABTE) and corresponding framework, which intelligent helps programmers to approximate the performance of their solutions without real running. ABTE mainly includes two parts: 1) the library of architecture models and algorithms; 2) the evaluate engine. We introduce the method of describing models of various architectures and their running algorithms. Based on the models, we propose a marked object trace method to help evaluate the parallel solutions, and use it in the evaluate engine. We explain ABTE by a case study, and the evaluation shows that ABTE can help programmers find the better solution to a parallel application without real running.